optolith-database-schema 0.18.3 → 0.18.5

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 (275) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/lib/types/Advantage.d.ts +3 -3
  3. package/lib/types/Advantage.js +2 -2
  4. package/lib/types/AnimalDisease.d.ts +1 -1
  5. package/lib/types/AnimalDisease.js +2 -2
  6. package/lib/types/AnimalType.js +2 -2
  7. package/lib/types/ArcaneBardTradition.d.ts +1 -1
  8. package/lib/types/ArcaneDancerTradition.d.ts +1 -1
  9. package/lib/types/Aspect.js +2 -2
  10. package/lib/types/Attribute.js +2 -2
  11. package/lib/types/Blessing.d.ts +1 -1
  12. package/lib/types/Blessing.js +3 -3
  13. package/lib/types/Cantrip.d.ts +1 -1
  14. package/lib/types/Cantrip.js +4 -4
  15. package/lib/types/Ceremony.d.ts +3 -3
  16. package/lib/types/Ceremony.js +2 -2
  17. package/lib/types/CombatTechnique.d.ts +2 -2
  18. package/lib/types/CombatTechnique.js +3 -3
  19. package/lib/types/Condition.d.ts +1 -1
  20. package/lib/types/Condition.js +2 -2
  21. package/lib/types/Continent.js +2 -2
  22. package/lib/types/Culture.d.ts +1 -1
  23. package/lib/types/Culture.js +2 -2
  24. package/lib/types/DerivedCharacteristic.d.ts +1 -1
  25. package/lib/types/DerivedCharacteristic.js +2 -2
  26. package/lib/types/Disadvantage.d.ts +3 -3
  27. package/lib/types/Disadvantage.js +2 -2
  28. package/lib/types/Disease.d.ts +1 -1
  29. package/lib/types/Disease.js +2 -2
  30. package/lib/types/Element.js +2 -2
  31. package/lib/types/ExperienceLevel.js +2 -2
  32. package/lib/types/EyeColor.js +2 -2
  33. package/lib/types/FamiliarsTrick.d.ts +1 -1
  34. package/lib/types/FamiliarsTrick.js +4 -4
  35. package/lib/types/HairColor.js +2 -2
  36. package/lib/types/Lessons.d.ts +1 -1
  37. package/lib/types/Lessons.js +4 -4
  38. package/lib/types/LiturgicalChant.d.ts +2 -2
  39. package/lib/types/LiturgicalChant.js +2 -2
  40. package/lib/types/Locale.d.ts +2 -2
  41. package/lib/types/Locale.js +3 -2
  42. package/lib/types/MetaCondition.d.ts +1 -1
  43. package/lib/types/MetaCondition.js +2 -2
  44. package/lib/types/PactCategory.d.ts +1 -1
  45. package/lib/types/PactCategory.js +4 -4
  46. package/lib/types/Patron.d.ts +1 -1
  47. package/lib/types/Patron.js +2 -2
  48. package/lib/types/PatronCategory.js +2 -2
  49. package/lib/types/PersonalityTrait.d.ts +1 -1
  50. package/lib/types/PersonalityTrait.js +2 -2
  51. package/lib/types/Profession.d.ts +2 -2
  52. package/lib/types/Profession.js +3 -3
  53. package/lib/types/Property.js +2 -2
  54. package/lib/types/Race.d.ts +1 -1
  55. package/lib/types/Race.js +5 -3
  56. package/lib/types/Region.js +2 -2
  57. package/lib/types/Ritual.d.ts +2 -2
  58. package/lib/types/Ritual.js +2 -2
  59. package/lib/types/Service.d.ts +1 -1
  60. package/lib/types/Service.js +2 -2
  61. package/lib/types/SexPractice.d.ts +2 -2
  62. package/lib/types/SexPractice.js +2 -2
  63. package/lib/types/Skill.d.ts +1 -1
  64. package/lib/types/Skill.js +3 -3
  65. package/lib/types/SkillGroup.js +2 -2
  66. package/lib/types/SkillModificationLevel.js +2 -2
  67. package/lib/types/SocialStatus.js +2 -2
  68. package/lib/types/Spell.d.ts +2 -2
  69. package/lib/types/Spell.js +2 -2
  70. package/lib/types/State.d.ts +1 -1
  71. package/lib/types/State.js +2 -2
  72. package/lib/types/Talisman.d.ts +1 -1
  73. package/lib/types/Talisman.js +2 -2
  74. package/lib/types/TargetCategory.js +2 -2
  75. package/lib/types/_Activatable.d.ts +3 -3
  76. package/lib/types/_Activatable.js +16 -16
  77. package/lib/types/_ActivatableSelectOptionCategory.js +2 -2
  78. package/lib/types/_ActivatableSkillCost.js +8 -8
  79. package/lib/types/_ActivatableSkillDuration.js +6 -6
  80. package/lib/types/_ActivatableSkillRange.js +2 -2
  81. package/lib/types/_ActivatableSkillTargetCategory.js +2 -2
  82. package/lib/types/_ArcaneTradition.d.ts +1 -1
  83. package/lib/types/_ArcaneTradition.js +2 -2
  84. package/lib/types/_DiseasePoison.js +2 -2
  85. package/lib/types/_Enhancements.d.ts +2 -2
  86. package/lib/types/_Enhancements.js +2 -2
  87. package/lib/types/_Influence.d.ts +1 -1
  88. package/lib/types/_Influence.js +2 -2
  89. package/lib/types/_Prerequisite.js +2 -2
  90. package/lib/types/equipment/EquipmentPackage.d.ts +1 -1
  91. package/lib/types/equipment/EquipmentPackage.js +2 -2
  92. package/lib/types/equipment/item/Ammunition.d.ts +1 -1
  93. package/lib/types/equipment/item/Ammunition.js +2 -2
  94. package/lib/types/equipment/item/Animal.d.ts +2 -2
  95. package/lib/types/equipment/item/AnimalCare.d.ts +2 -2
  96. package/lib/types/equipment/item/Armor.d.ts +1 -1
  97. package/lib/types/equipment/item/Armor.js +3 -3
  98. package/lib/types/equipment/item/BandageOrRemedy.d.ts +2 -2
  99. package/lib/types/equipment/item/Book.d.ts +1 -1
  100. package/lib/types/equipment/item/Book.js +2 -2
  101. package/lib/types/equipment/item/CeremonialItem.d.ts +2 -2
  102. package/lib/types/equipment/item/Clothes.d.ts +2 -2
  103. package/lib/types/equipment/item/ClothingPackage.d.ts +1 -1
  104. package/lib/types/equipment/item/Container.d.ts +2 -2
  105. package/lib/types/equipment/item/Elixir.d.ts +1 -1
  106. package/lib/types/equipment/item/Elixir.js +2 -2
  107. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +2 -2
  108. package/lib/types/equipment/item/GemOrPreciousStone.d.ts +1 -1
  109. package/lib/types/equipment/item/GemOrPreciousStone.js +2 -2
  110. package/lib/types/equipment/item/IlluminationLightSource.d.ts +2 -2
  111. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +2 -2
  112. package/lib/types/equipment/item/Jewelry.d.ts +2 -2
  113. package/lib/types/equipment/item/Laboratory.d.ts +2 -2
  114. package/lib/types/equipment/item/Liebesspielzeug.d.ts +2 -2
  115. package/lib/types/equipment/item/LuxuryGood.d.ts +2 -2
  116. package/lib/types/equipment/item/MagicalArtifact.d.ts +2 -2
  117. package/lib/types/equipment/item/MusicalInstrument.d.ts +2 -2
  118. package/lib/types/equipment/item/OrienteeringAid.d.ts +2 -2
  119. package/lib/types/equipment/item/Poison.d.ts +1 -1
  120. package/lib/types/equipment/item/Poison.js +8 -8
  121. package/lib/types/equipment/item/RopeOrChain.d.ts +2 -2
  122. package/lib/types/equipment/item/Stationery.d.ts +2 -2
  123. package/lib/types/equipment/item/ThievesTool.d.ts +2 -2
  124. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +2 -2
  125. package/lib/types/equipment/item/TravelGearOrTool.d.ts +2 -2
  126. package/lib/types/equipment/item/Vehicle.d.ts +2 -2
  127. package/lib/types/equipment/item/Weapon.d.ts +1 -1
  128. package/lib/types/equipment/item/Weapon.js +7 -3
  129. package/lib/types/equipment/item/WeaponAccessory.d.ts +2 -2
  130. package/lib/types/equipment/item/_Item.d.ts +3 -3
  131. package/lib/types/equipment/item/_Item.js +4 -4
  132. package/lib/types/equipment/item/sub/ArmorType.js +2 -2
  133. package/lib/types/equipment/item/sub/Reach.js +2 -2
  134. package/lib/types/magicalActions/AnimistPower.d.ts +2 -2
  135. package/lib/types/magicalActions/AnimistPower.js +4 -4
  136. package/lib/types/magicalActions/AnimistPower_Tribe.js +2 -2
  137. package/lib/types/magicalActions/Curse.d.ts +1 -1
  138. package/lib/types/magicalActions/Curse.js +4 -4
  139. package/lib/types/magicalActions/DominationRitual.d.ts +1 -1
  140. package/lib/types/magicalActions/DominationRitual.js +4 -4
  141. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +1 -1
  142. package/lib/types/magicalActions/ElvenMagicalSong.js +4 -4
  143. package/lib/types/magicalActions/GeodeRitual.d.ts +1 -1
  144. package/lib/types/magicalActions/GeodeRitual.js +2 -2
  145. package/lib/types/magicalActions/JesterTrick.d.ts +1 -1
  146. package/lib/types/magicalActions/JesterTrick.js +2 -2
  147. package/lib/types/magicalActions/MagicalDance.d.ts +2 -2
  148. package/lib/types/magicalActions/MagicalDance.js +4 -4
  149. package/lib/types/magicalActions/MagicalMelody.d.ts +2 -2
  150. package/lib/types/magicalActions/MagicalMelody.js +2 -2
  151. package/lib/types/magicalActions/MagicalRune.d.ts +1 -1
  152. package/lib/types/magicalActions/MagicalRune.js +6 -6
  153. package/lib/types/magicalActions/ZibiljaRitual.d.ts +1 -1
  154. package/lib/types/magicalActions/ZibiljaRitual.js +2 -2
  155. package/lib/types/magicalActions/_MusicTradition.d.ts +1 -1
  156. package/lib/types/magicalActions/_MusicTradition.js +2 -2
  157. package/lib/types/prerequisites/DisplayOption.js +2 -2
  158. package/lib/types/prerequisites/single/TextPrerequisite.js +2 -2
  159. package/lib/types/rule/CoreRule.d.ts +1 -1
  160. package/lib/types/rule/CoreRule.js +4 -4
  161. package/lib/types/rule/FocusRule.d.ts +1 -1
  162. package/lib/types/rule/FocusRule.js +2 -2
  163. package/lib/types/rule/FocusRule_Subject.js +2 -2
  164. package/lib/types/rule/OptionalRule.d.ts +1 -1
  165. package/lib/types/rule/OptionalRule.js +2 -2
  166. package/lib/types/source/Publication.js +2 -2
  167. package/lib/types/source/_PublicationRef.d.ts +5 -5
  168. package/lib/types/source/_PublicationRef.js +19 -11
  169. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +3 -3
  170. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +2 -2
  171. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +3 -3
  172. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +2 -2
  173. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +3 -3
  174. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +2 -2
  175. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +3 -3
  176. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +2 -2
  177. package/lib/types/specialAbility/AncestorGlyph.d.ts +3 -3
  178. package/lib/types/specialAbility/AncestorGlyph.js +2 -2
  179. package/lib/types/specialAbility/BlessedTradition.d.ts +3 -3
  180. package/lib/types/specialAbility/BlessedTradition.js +2 -2
  181. package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +3 -3
  182. package/lib/types/specialAbility/BrawlingSpecialAbility.js +2 -2
  183. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +3 -3
  184. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +2 -2
  185. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +3 -3
  186. package/lib/types/specialAbility/CombatSpecialAbility.js +2 -2
  187. package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +3 -3
  188. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +2 -2
  189. package/lib/types/specialAbility/CommandSpecialAbility.d.ts +3 -3
  190. package/lib/types/specialAbility/CommandSpecialAbility.js +2 -2
  191. package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +3 -3
  192. package/lib/types/specialAbility/FamiliarSpecialAbility.js +2 -2
  193. package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +3 -3
  194. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +2 -2
  195. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +3 -3
  196. package/lib/types/specialAbility/FatePointSpecialAbility.js +2 -2
  197. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +3 -3
  198. package/lib/types/specialAbility/GeneralSpecialAbility.js +2 -2
  199. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +3 -3
  200. package/lib/types/specialAbility/KarmaSpecialAbility.js +2 -2
  201. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +3 -3
  202. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +2 -2
  203. package/lib/types/specialAbility/LycantropicGift.d.ts +3 -3
  204. package/lib/types/specialAbility/LycantropicGift.js +2 -2
  205. package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +3 -3
  206. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +2 -2
  207. package/lib/types/specialAbility/MagicalSign.d.ts +1 -1
  208. package/lib/types/specialAbility/MagicalSign.js +2 -2
  209. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +3 -3
  210. package/lib/types/specialAbility/MagicalSpecialAbility.js +2 -2
  211. package/lib/types/specialAbility/MagicalTradition.d.ts +3 -3
  212. package/lib/types/specialAbility/MagicalTradition.js +2 -2
  213. package/lib/types/specialAbility/PactGift.d.ts +3 -3
  214. package/lib/types/specialAbility/PactGift.js +2 -2
  215. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +3 -3
  216. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +2 -2
  217. package/lib/types/specialAbility/Sermon.d.ts +3 -3
  218. package/lib/types/specialAbility/Sermon.js +2 -2
  219. package/lib/types/specialAbility/SexSpecialAbility.d.ts +3 -3
  220. package/lib/types/specialAbility/SexSpecialAbility.js +2 -2
  221. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +3 -3
  222. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +2 -2
  223. package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +3 -3
  224. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +2 -2
  225. package/lib/types/specialAbility/VampiricGift.d.ts +3 -3
  226. package/lib/types/specialAbility/VampiricGift.js +2 -2
  227. package/lib/types/specialAbility/Vision.d.ts +3 -3
  228. package/lib/types/specialAbility/Vision.js +2 -2
  229. package/lib/types/specialAbility/sub/Language.d.ts +1 -1
  230. package/lib/types/specialAbility/sub/Language.js +4 -4
  231. package/lib/types/specialAbility/sub/Script.d.ts +1 -1
  232. package/lib/types/specialAbility/sub/Script.js +2 -2
  233. package/lib/types/specialAbility/sub/TradeSecret.d.ts +1 -1
  234. package/lib/types/specialAbility/sub/TradeSecret.js +2 -2
  235. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +3 -3
  236. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +2 -2
  237. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +3 -3
  238. package/lib/types/traditionArtifacts/AttireEnchantment.js +2 -2
  239. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +3 -3
  240. package/lib/types/traditionArtifacts/BowlEnchantment.js +2 -2
  241. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +3 -3
  242. package/lib/types/traditionArtifacts/CauldronEnchantment.js +2 -2
  243. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +3 -3
  244. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +2 -2
  245. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +3 -3
  246. package/lib/types/traditionArtifacts/DaggerRitual.js +2 -2
  247. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +3 -3
  248. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +2 -2
  249. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +3 -3
  250. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +2 -2
  251. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +3 -3
  252. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +2 -2
  253. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +3 -3
  254. package/lib/types/traditionArtifacts/OrbEnchantment.js +2 -2
  255. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +3 -3
  256. package/lib/types/traditionArtifacts/RingEnchantment.js +2 -2
  257. package/lib/types/traditionArtifacts/SickleRitual.d.ts +3 -3
  258. package/lib/types/traditionArtifacts/SickleRitual.js +2 -2
  259. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +3 -3
  260. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +2 -2
  261. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +3 -3
  262. package/lib/types/traditionArtifacts/StaffEnchantment.js +2 -2
  263. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +3 -3
  264. package/lib/types/traditionArtifacts/ToyEnchantment.js +2 -2
  265. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +3 -3
  266. package/lib/types/traditionArtifacts/Trinkhornzauber.js +2 -2
  267. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +3 -3
  268. package/lib/types/traditionArtifacts/WandEnchantment.js +2 -2
  269. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +3 -3
  270. package/lib/types/traditionArtifacts/WeaponEnchantment.js +2 -2
  271. package/lib/types/traditionArtifacts/sub/AnimalShape.js +2 -2
  272. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +2 -2
  273. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +2 -2
  274. package/lib/types/traditionArtifacts/sub/Brew.js +2 -2
  275. package/package.json +2 -2
@@ -4,7 +4,7 @@ import { IndefiniteOneTimeCost } from "./_ActivatableSkillCost.js";
4
4
  import { DurationUnitValue, FixedDuration, IndefiniteDuration, } from "./_ActivatableSkillDuration.js";
5
5
  import { AnimalTypeIdentifier, PropertyIdentifier } from "./_Identifier.js";
6
6
  import { ResponsiveText, ResponsiveTextOptional } from "./_ResponsiveText.js";
7
- import { NestedLocaleMap } from "./Locale.js";
7
+ import { NestedTranslationMap } from "./Locale.js";
8
8
  import { Errata } from "./source/_Erratum.js";
9
9
  import { src } from "./source/_PublicationRef.js";
10
10
  export const FamiliarsTrick = Entity(import.meta.url, {
@@ -30,7 +30,7 @@ If no animal types are given, the animal disease applies to all animal types.`,
30
30
  type: Integer({ minimum: 1 }),
31
31
  }),
32
32
  src,
33
- translations: NestedLocaleMap(Required, "FamiliarsTrickTranslation", Object({
33
+ translations: NestedTranslationMap(Required, "FamiliarsTrick", Object({
34
34
  name: Required({
35
35
  comment: "The familiar’s trick’s name.",
36
36
  type: String({ minLength: 1 }),
@@ -64,7 +64,7 @@ const FamiliarsTrickProperty = Enum(import.meta.url, {
64
64
  const IndefiniteFamiliarsTrickProperty = TypeAlias(import.meta.url, {
65
65
  name: "IndefiniteFamiliarsTrickProperty",
66
66
  type: () => Object({
67
- translations: NestedLocaleMap(Optional, "IndefiniteFamiliarsTrickPropertyTranslation", Object({
67
+ translations: NestedTranslationMap(Optional, "IndefiniteFamiliarsTrickProperty", Object({
68
68
  description: Required({
69
69
  comment: "A description of the property.",
70
70
  type: IncludeIdentifier(ResponsiveText),
@@ -117,7 +117,7 @@ const FamiliarsTrickFixedOneTimeCost = TypeAlias(import.meta.url, {
117
117
  comment: "The interval in which you have to pay the AE cost again.",
118
118
  type: IncludeIdentifier(DurationUnitValue),
119
119
  }),
120
- translations: NestedLocaleMap(Optional, "FamiliarsTrickFixedOneTimeCostTranslation", Object({
120
+ translations: NestedTranslationMap(Optional, "FamiliarsTrickFixedOneTimeCost", Object({
121
121
  per: Optional({
122
122
  comment: "The cost have to be per a specific countable entity, e.g. `8 KP per person`.",
123
123
  type: IncludeIdentifier(ResponsiveTextOptional),
@@ -1,10 +1,10 @@
1
1
  import { Entity, Object, Required, String } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  export const HairColor = Entity(import.meta.url, {
4
4
  name: "HairColor",
5
5
  namePlural: "HairColors",
6
6
  type: () => Object({
7
- translations: NestedLocaleMap(Required, "HairColorTranslation", Object({
7
+ translations: NestedTranslationMap(Required, "HairColor", Object({
8
8
  name: Required({
9
9
  comment: "The hair color’s name.",
10
10
  type: String({ minLength: 1 }),
@@ -86,7 +86,7 @@ export declare const Curriculum: Entity<"Curriculum", {
86
86
  }, "curriculum">>, true>;
87
87
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
88
88
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
89
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
89
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
90
90
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
91
91
  printing: import("tsondb/schema/def").MemberDecl<Integer, false>;
92
92
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
@@ -1,5 +1,5 @@
1
1
  import { Array, ChildEntities, Entity, Enum, EnumCase, IncludeIdentifier, Integer, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  import { CurriculumIdentifier, ElementIdentifier, GuidelineIdentifier, MagicalTraditionIdentifier, PropertyIdentifier, SkillIdentifier, } from "./_Identifier.js";
4
4
  import { CombatTechniqueIdentifier, SpellworkIdentifier } from "./_IdentifierGroup.js";
5
5
  import { Errata } from "./source/_Erratum.js";
@@ -12,7 +12,7 @@ export const Guideline = Entity(import.meta.url, {
12
12
  comment: "Maximum number of spells that can be exchanged.",
13
13
  type: Integer({ minimum: 0 }),
14
14
  }),
15
- translations: NestedLocaleMap(Required, "GuidelineTranslation", Object({
15
+ translations: NestedTranslationMap(Required, "Guideline", Object({
16
16
  name: Required({
17
17
  comment: "The guideline’s name.",
18
18
  type: String({ minLength: 1 }),
@@ -43,7 +43,7 @@ export const Curriculum = Entity(import.meta.url, {
43
43
  type: ChildEntities(LessonPackage),
44
44
  }),
45
45
  src,
46
- translations: NestedLocaleMap(Required, "CurriculumTranslation", Object({
46
+ translations: NestedTranslationMap(Required, "Curriculum", Object({
47
47
  name: Required({
48
48
  comment: "The institution’s name.",
49
49
  type: String({ minLength: 1 }),
@@ -137,7 +137,7 @@ export const LessonPackage = Entity(import.meta.url, {
137
137
  skills: Optional({
138
138
  type: Array(IncludeIdentifier(AbilityAdjustment), { minItems: 1, uniqueItems: true }),
139
139
  }),
140
- translations: NestedLocaleMap(Required, "LessonPackageTranslation", Object({
140
+ translations: NestedTranslationMap(Required, "LessonPackage", Object({
141
141
  name: Required({
142
142
  comment: "The lesson package’s name.",
143
143
  type: String({ minLength: 1 }),
@@ -482,7 +482,7 @@ export declare const LiturgicalChant: Entity<"LiturgicalChant", {
482
482
  }, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>, []>>, false>;
483
483
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
484
484
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
485
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
485
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
486
486
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
487
487
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
488
488
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -595,7 +595,7 @@ export declare const LiturgicalChant: Entity<"LiturgicalChant", {
595
595
  }, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>, []>>, false>;
596
596
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
597
597
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
598
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
598
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
599
599
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
600
600
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
601
601
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -7,7 +7,7 @@ import { Enhancement } from "./_Enhancements.js";
7
7
  import { ImprovementCost } from "./_ImprovementCost.js";
8
8
  import { LiturgyPrerequisites } from "./_Prerequisite.js";
9
9
  import { SkillCheck, SkillCheckPenalty } from "./_SkillCheck.js";
10
- import { NestedLocaleMap } from "./Locale.js";
10
+ import { NestedTranslationMap } from "./Locale.js";
11
11
  import { Errata } from "./source/_Erratum.js";
12
12
  import { src } from "./source/_PublicationRef.js";
13
13
  export const LiturgicalChant = Entity(import.meta.url, {
@@ -43,7 +43,7 @@ export const LiturgicalChant = Entity(import.meta.url, {
43
43
  type: IncludeIdentifier(LiturgyPrerequisites),
44
44
  }),
45
45
  src,
46
- translations: NestedLocaleMap(Required, "LiturgicalChantTranslation", Object({
46
+ translations: NestedTranslationMap(Required, "LiturgicalChant", Object({
47
47
  name: Required({
48
48
  comment: "The liturgical chant’s name.",
49
49
  type: String({ minLength: 1 }),
@@ -4,8 +4,8 @@ export declare const Locale: Entity<"Locale", {
4
4
  region: MemberDecl<String, true>;
5
5
  is_missing_implementation: MemberDecl<Boolean, true>;
6
6
  }, undefined>;
7
- export declare const NestedLocaleMap: <Name extends string, T extends Record<string, MemberDecl<Type, boolean>>, R extends boolean>(MemberDeclCreator: <T_1 extends Type>(options: {
7
+ export declare const NestedTranslationMap: <Name extends string, T extends Record<string, MemberDecl<Type, boolean>>, R extends boolean>(MemberDeclCreator: <T_1 extends Type>(options: {
8
8
  comment?: string;
9
9
  isDeprecated?: boolean;
10
10
  type: T_1;
11
- }) => MemberDecl<T_1, R>, name: Name, type: ObjectType<T>) => MemberDecl<NestedEntityMap<Name, T>, R>;
11
+ }) => MemberDecl<T_1, R>, entityName: Name, type: ObjectType<T>) => MemberDecl<NestedEntityMap<`${Name}Translation`, T>, R>;
@@ -1307,10 +1307,11 @@ export const Locale = Entity(import.meta.url, {
1307
1307
  // }),
1308
1308
  }),
1309
1309
  });
1310
- export const NestedLocaleMap = (MemberDeclCreator, name, type) => MemberDeclCreator({
1310
+ export const NestedTranslationMap = (MemberDeclCreator, entityName, type) => MemberDeclCreator({
1311
1311
  comment: "All translations for the entry, identified by IETF language tag (BCP47).",
1312
1312
  type: NestedEntityMap({
1313
- name,
1313
+ name: `${entityName}Translation`,
1314
+ namePlural: `${entityName}Translations`,
1314
1315
  secondaryEntity: Locale,
1315
1316
  type,
1316
1317
  }),
@@ -2,7 +2,7 @@ import { Array, Entity, IncludeIdentifier, Object, String } from "tsondb/schema/
2
2
  export declare const MetaCondition: Entity<"MetaCondition", {
3
3
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
4
4
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
5
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
5
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
6
6
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
7
7
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
8
8
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -1,5 +1,5 @@
1
1
  import { Array, Entity, IncludeIdentifier, Object, Optional, Required, String, } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  import { Errata } from "./source/_Erratum.js";
4
4
  import { src } from "./source/_PublicationRef.js";
5
5
  export const MetaCondition = Entity(import.meta.url, {
@@ -8,7 +8,7 @@ export const MetaCondition = Entity(import.meta.url, {
8
8
  comment: "Meta Conditions are rule elements that work like conditions in the sense that they have four levels with different effects, but which are not explicitly listed as conditions.",
9
9
  type: () => Object({
10
10
  src,
11
- translations: NestedLocaleMap(Required, "MetaConditionTranslation", Object({
11
+ translations: NestedTranslationMap(Required, "MetaCondition", Object({
12
12
  name: Required({
13
13
  comment: "The meta condition’s name.",
14
14
  type: String({ minLength: 1 }),
@@ -14,7 +14,7 @@ export declare const PactCategory: Entity<"PactCategory", {
14
14
  }, "parent">>, true>;
15
15
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
16
16
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
17
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
17
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
18
18
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
19
19
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
20
20
  pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -1,6 +1,6 @@
1
1
  import { ChildEntities, Entity, IncludeIdentifier, Object, Optional, Required, String, } from "tsondb/schema/def";
2
2
  import { PactCategoryIdentifier } from "./_Identifier.js";
3
- import { NestedLocaleMap } from "./Locale.js";
3
+ import { NestedTranslationMap } from "./Locale.js";
4
4
  import { Errata } from "./source/_Erratum.js";
5
5
  import { src } from "./source/_PublicationRef.js";
6
6
  export const PactCategory = Entity(import.meta.url, {
@@ -16,7 +16,7 @@ export const PactCategory = Entity(import.meta.url, {
16
16
  type: ChildEntities(PactDomain),
17
17
  }),
18
18
  src,
19
- translations: NestedLocaleMap(Required, "PactCategoryTranslation", Object({
19
+ translations: NestedTranslationMap(Required, "PactCategory", Object({
20
20
  name: Required({
21
21
  comment: "The pact category’s name.",
22
22
  type: String({ minLength: 1 }),
@@ -36,7 +36,7 @@ export const PactType = Entity(import.meta.url, {
36
36
  comment: "The pact category this type belongs to.",
37
37
  type: PactCategoryIdentifier(),
38
38
  }),
39
- translations: NestedLocaleMap(Required, "PactTypeTranslation", Object({
39
+ translations: NestedTranslationMap(Required, "PactType", Object({
40
40
  name: Required({
41
41
  comment: "The type’s name.",
42
42
  type: String({ minLength: 1 }),
@@ -54,7 +54,7 @@ export const PactDomain = Entity(import.meta.url, {
54
54
  comment: "The pact category this domain belongs to.",
55
55
  type: PactCategoryIdentifier(),
56
56
  }),
57
- translations: NestedLocaleMap(Required, "PactDomainTranslation", Object({
57
+ translations: NestedTranslationMap(Required, "PactDomain", Object({
58
58
  name: Required({
59
59
  comment: "The domain’s name.",
60
60
  type: String({ minLength: 1 }),
@@ -56,7 +56,7 @@ export declare const Patron: Entity<"Patron", {
56
56
  }, []>>>, false>;
57
57
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
58
58
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
59
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
59
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
60
60
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
61
61
  printing: import("tsondb/schema/def").MemberDecl<Integer, false>;
62
62
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
@@ -2,7 +2,7 @@ import { Array, Entity, Enum, EnumCase, IncludeIdentifier, Integer, Object, Opti
2
2
  import { AdvantageIdentifier, AttributeIdentifier, CultureIdentifier, DisadvantageIdentifier, PatronCategoryIdentifier, SkillIdentifier, } from "./_Identifier.js";
3
3
  import { SpellworkIdentifier } from "./_IdentifierGroup.js";
4
4
  import { ImprovementCost } from "./_ImprovementCost.js";
5
- import { NestedLocaleMap } from "./Locale.js";
5
+ import { NestedTranslationMap } from "./Locale.js";
6
6
  import { src } from "./source/_PublicationRef.js";
7
7
  export const Patron = Entity(import.meta.url, {
8
8
  name: "Patron",
@@ -51,7 +51,7 @@ export const Patron = Entity(import.meta.url, {
51
51
  type: Array(IncludeIdentifier(SpellworkIdentifier), { minItems: 1, uniqueItems: true }),
52
52
  }),
53
53
  src,
54
- translations: NestedLocaleMap(Required, "PatronTranslation", Object({
54
+ translations: NestedTranslationMap(Required, "Patron", Object({
55
55
  name: Required({
56
56
  comment: "The patron’s name.",
57
57
  type: String({ minLength: 1 }),
@@ -1,5 +1,5 @@
1
1
  import { Array, Entity, Object, Required, String } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  import { CultureIdentifier } from "./_Identifier.js";
4
4
  export const PatronCategory = Entity(import.meta.url, {
5
5
  name: "PatronCategory",
@@ -9,7 +9,7 @@ export const PatronCategory = Entity(import.meta.url, {
9
9
  comment: "The list of cultures where patrons from this category can be the primary patron of.",
10
10
  type: Array(CultureIdentifier(), { minItems: 1, uniqueItems: true }),
11
11
  }),
12
- translations: NestedLocaleMap(Required, "PatronCategoryTranslation", Object({
12
+ translations: NestedTranslationMap(Required, "PatronCategory", Object({
13
13
  name: Required({
14
14
  comment: "The patron category’s name.",
15
15
  type: String({ minLength: 1 }),
@@ -28,7 +28,7 @@ export declare const PersonalityTrait: Entity<"PersonalityTrait", {
28
28
  combination_options: import("tsondb/schema/def").MemberDecl<Array<import("tsondb/schema/def").ReferenceIdentifierType>, false>;
29
29
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
30
30
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
31
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
31
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
32
32
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
33
33
  printing: import("tsondb/schema/def").MemberDecl<Integer, false>;
34
34
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
@@ -1,5 +1,5 @@
1
1
  import { Array, Entity, IncludeIdentifier, Integer, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  import { PersonalityTraitIdentifier } from "./_Identifier.js";
4
4
  import { PersonalityTraitPrerequisites } from "./_Prerequisite.js";
5
5
  import { Errata } from "./source/_Erratum.js";
@@ -21,7 +21,7 @@ export const PersonalityTrait = Entity(import.meta.url, {
21
21
  type: Array(PersonalityTraitIdentifier(), { minItems: 1, uniqueItems: true }),
22
22
  }),
23
23
  src,
24
- translations: NestedLocaleMap(Required, "PersonalityTraitTranslation", Object({
24
+ translations: NestedTranslationMap(Required, "PersonalityTrait", Object({
25
25
  name: Required({
26
26
  comment: "The personality trait’s name.",
27
27
  type: String({ minLength: 1 }),
@@ -538,7 +538,7 @@ export declare const Profession: Entity<"Profession", {
538
538
  }>, [Identifier: import("tsondb/schema/def").TypeParameter<"Identifier", import("tsondb/schema/def").Type>]>>>, false>;
539
539
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", ObjectType<{
540
540
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
541
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
541
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
542
542
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", ObjectType<{
543
543
  printing: import("tsondb/schema/def").MemberDecl<Integer, false>;
544
544
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", ObjectType<{
@@ -1130,7 +1130,7 @@ export declare const ProfessionVersion: Entity<"ProfessionVersion", {
1130
1130
  }>, [Identifier: import("tsondb/schema/def").TypeParameter<"Identifier", import("tsondb/schema/def").Type>]>>>, false>;
1131
1131
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", ObjectType<{
1132
1132
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
1133
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
1133
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
1134
1134
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", ObjectType<{
1135
1135
  printing: import("tsondb/schema/def").MemberDecl<Integer, false>;
1136
1136
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", ObjectType<{
@@ -3,7 +3,7 @@ import { CommonnessRatedAdvantageDisadvantage } from "./_CommonnessRatedAdvantag
3
3
  import { AdvantageIdentifier, CantripIdentifier, CurriculumIdentifier, DisadvantageIdentifier, ExperienceLevelIdentifier, GeneralSelectOptionIdentifier, MagicalTraditionIdentifier, ProfessionIdentifier, ProfessionPackageIdentifier, ProfessionVersionIdentifier, SkillGroupIdentifier, SkillIdentifier, } from "./_Identifier.js";
4
4
  import { CombatTechniqueIdentifier, LiturgyIdentifier, MagicalActionIdentifier, RequirableSelectOptionIdentifier, SpecialAbilityIdentifier, SpellworkIdentifier, } from "./_IdentifierGroup.js";
5
5
  import { ProfessionPrerequisites } from "./_Prerequisite.js";
6
- import { NestedLocaleMap } from "./Locale.js";
6
+ import { NestedTranslationMap } from "./Locale.js";
7
7
  import { Errata } from "./source/_Erratum.js";
8
8
  import { src } from "./source/_PublicationRef.js";
9
9
  export const Profession = Entity(import.meta.url, {
@@ -97,7 +97,7 @@ export const ProfessionVersion = Entity(import.meta.url, {
97
97
  type: Array(GenIncludeIdentifier(CommonnessRatedAdvantageDisadvantage, [DisadvantageIdentifier()]), { minItems: 1 }),
98
98
  }),
99
99
  src,
100
- translations: NestedLocaleMap(Required, "ProfessionVersionTranslation", ObjectType({
100
+ translations: NestedTranslationMap(Required, "ProfessionVersion", ObjectType({
101
101
  name: Required({
102
102
  comment: "The basic profession’s name.",
103
103
  type: IncludeIdentifier(ProfessionName),
@@ -257,7 +257,7 @@ export const ProfessionVariant = Entity(import.meta.url, {
257
257
  comment: "Clerical profession variants receive these liturgical chants at the listed skill ratings. These liturgical chants are considered activated.",
258
258
  type: Array(IncludeIdentifier(LiturgicalChantRating), { minItems: 1 }),
259
259
  }),
260
- translations: NestedLocaleMap(Required, "ProfessionVariantTranslation", ObjectType({
260
+ translations: NestedTranslationMap(Required, "ProfessionVariant", ObjectType({
261
261
  name: Required({
262
262
  comment: "The profession variant’s name.",
263
263
  type: IncludeIdentifier(ProfessionName),
@@ -1,6 +1,6 @@
1
1
  import { Entity, IncludeIdentifier, Object, Optional, Required, String } from "tsondb/schema/def";
2
2
  import { SkillCheck } from "./_SkillCheck.js";
3
- import { NestedLocaleMap } from "./Locale.js";
3
+ import { NestedTranslationMap } from "./Locale.js";
4
4
  export const Property = Entity(import.meta.url, {
5
5
  name: "Property",
6
6
  namePlural: "Properties",
@@ -9,7 +9,7 @@ export const Property = Entity(import.meta.url, {
9
9
  comment: "The property check’s attributes. Only the properties from the Core Rules have defined property checks.",
10
10
  type: IncludeIdentifier(SkillCheck),
11
11
  }),
12
- translations: NestedLocaleMap(Required, "PropertyTranslation", Object({
12
+ translations: NestedTranslationMap(Required, "Property", Object({
13
13
  name: Required({
14
14
  comment: "The property’s name.",
15
15
  type: String({ minLength: 1 }),
@@ -79,7 +79,7 @@ export declare const Race: Entity<"Race", {
79
79
  }, "race">>, true>;
80
80
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", Array<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
81
81
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
82
- occurrences: import("tsondb/schema/def").MemberDecl<NestedEntityMap<"Occurrence", {
82
+ occurrences: import("tsondb/schema/def").MemberDecl<NestedEntityMap<string, {
83
83
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
84
84
  printing: import("tsondb/schema/def").MemberDecl<Integer, false>;
85
85
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
package/lib/types/Race.js CHANGED
@@ -3,7 +3,7 @@ import { CommonnessRatedAdvantageDisadvantage } from "./_CommonnessRatedAdvantag
3
3
  import { Dice, DieType } from "./_Dice.js";
4
4
  import { AdvantageIdentifier, AttributeIdentifier, CultureIdentifier, DisadvantageIdentifier, EyeColorIdentifier, HairColorIdentifier, RaceIdentifier, } from "./_Identifier.js";
5
5
  import { ExperienceLevel } from "./ExperienceLevel.js";
6
- import { NestedLocaleMap } from "./Locale.js";
6
+ import { NestedTranslationMap } from "./Locale.js";
7
7
  import { Errata } from "./source/_Erratum.js";
8
8
  import { src } from "./source/_PublicationRef.js";
9
9
  export const Race = Entity(import.meta.url, {
@@ -42,6 +42,7 @@ export const Race = Entity(import.meta.url, {
42
42
  comment: "Defines the starting ages for the race. It depends on the selected experience level.",
43
43
  type: NestedEntityMap({
44
44
  name: "StartingAgeConfigForExperienceLevel",
45
+ namePlural: "StartingAgeConfigsForExperienceLevel",
45
46
  secondaryEntity: ExperienceLevel,
46
47
  type: Object({
47
48
  base: Required({
@@ -53,6 +54,7 @@ export const Race = Entity(import.meta.url, {
53
54
  type: IncludeIdentifier(Dice),
54
55
  }),
55
56
  }),
57
+ displayName: null,
56
58
  }),
57
59
  }),
58
60
  variants: Required({
@@ -60,7 +62,7 @@ export const Race = Entity(import.meta.url, {
60
62
  type: ChildEntities(RaceVariant),
61
63
  }),
62
64
  src,
63
- translations: NestedLocaleMap(Required, "RaceTranslation", Object({
65
+ translations: NestedTranslationMap(Required, "Race", Object({
64
66
  name: Required({
65
67
  comment: "The race’s name.",
66
68
  type: String({ minLength: 1 }),
@@ -246,7 +248,7 @@ export const RaceVariant = Entity(import.meta.url, {
246
248
  comment: "Configuration for random height generation.",
247
249
  type: IncludeIdentifier(RandomHeightGeneration),
248
250
  }),
249
- translations: NestedLocaleMap(Required, "RaceVariantTranslation", Object({
251
+ translations: NestedTranslationMap(Required, "RaceVariant", Object({
250
252
  name: Required({
251
253
  comment: "The race variant’s name. If this is the only variant for a base race and thus just provides the missing information without actually being able to select, fill in the name of the base race.",
252
254
  type: String({ minLength: 1 }),
@@ -1,10 +1,10 @@
1
1
  import { Entity, Object, Required, String } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  export const Region = Entity(import.meta.url, {
4
4
  name: "Region",
5
5
  namePlural: "Regions",
6
6
  type: () => Object({
7
- translations: NestedLocaleMap(Required, "RegionTranslation", Object({
7
+ translations: NestedTranslationMap(Required, "Region", Object({
8
8
  name: Required({
9
9
  comment: "The region’s name.",
10
10
  type: String({ minLength: 1 }),
@@ -480,7 +480,7 @@ export declare const Ritual: Entity<"Ritual", {
480
480
  }, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>, []>>, false>;
481
481
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
482
482
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
483
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
483
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
484
484
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
485
485
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
486
486
  pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -592,7 +592,7 @@ export declare const Ritual: Entity<"Ritual", {
592
592
  }, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>, []>>, false>;
593
593
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
594
594
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
595
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
595
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
596
596
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
597
597
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
598
598
  pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -8,7 +8,7 @@ import { ImprovementCost } from "./_ImprovementCost.js";
8
8
  import { SpellworkPrerequisites } from "./_Prerequisite.js";
9
9
  import { SkillCheck, SkillCheckPenalty } from "./_SkillCheck.js";
10
10
  import { SpellworkTraditions } from "./_Spellwork.js";
11
- import { NestedLocaleMap } from "./Locale.js";
11
+ import { NestedTranslationMap } from "./Locale.js";
12
12
  import { Errata } from "./source/_Erratum.js";
13
13
  import { src } from "./source/_PublicationRef.js";
14
14
  export const Ritual = Entity(import.meta.url, {
@@ -48,7 +48,7 @@ export const Ritual = Entity(import.meta.url, {
48
48
  type: IncludeIdentifier(SpellworkPrerequisites),
49
49
  }),
50
50
  src,
51
- translations: NestedLocaleMap(Required, "RitualTranslation", Object({
51
+ translations: NestedTranslationMap(Required, "Ritual", Object({
52
52
  name: Required({
53
53
  comment: "The ritual’s name.",
54
54
  type: String({ minLength: 1 }),
@@ -6,7 +6,7 @@ export declare const Service: Entity<"Service", {
6
6
  }, []>>>, true>;
7
7
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
8
8
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
9
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
9
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
10
10
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
11
11
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
12
12
  pages: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -1,5 +1,5 @@
1
1
  import { Array, Entity, Enum, EnumCase, IncludeIdentifier, Object, Optional, Required, String, } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  import { Errata } from "./source/_Erratum.js";
4
4
  import { src } from "./source/_PublicationRef.js";
5
5
  export const Service = Entity(import.meta.url, {
@@ -14,7 +14,7 @@ export const Service = Entity(import.meta.url, {
14
14
  }),
15
15
  }),
16
16
  src,
17
- translations: NestedLocaleMap(Required, "ServiceTranslation", Object({
17
+ translations: NestedTranslationMap(Required, "Service", Object({
18
18
  name: Required({
19
19
  comment: "The service’s name.",
20
20
  type: String({ minLength: 1 }),
@@ -2,7 +2,7 @@ import { Entity, Object, String } from "tsondb/schema/def";
2
2
  export declare const SexPractice: Entity<"SexPractice", {
3
3
  src: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRefs", import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"PublicationRef", Object<{
4
4
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
5
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
5
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
6
6
  initial: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"InitialOccurrence", Object<{
7
7
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
8
8
  pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").IncludeIdentifierType<[], import("tsondb/schema/def").TypeAliasDecl<"PageRange", Object<{
@@ -40,7 +40,7 @@ export declare const SexPractice: Entity<"SexPractice", {
40
40
  }, []>>>, false>;
41
41
  }>, true>;
42
42
  }>, []>>>, []>>, true>;
43
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"StateTranslation", {
43
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SexPracticeTranslation", {
44
44
  name: import("tsondb/schema/def").MemberDecl<String, true>;
45
45
  rules: import("tsondb/schema/def").MemberDecl<String, true>;
46
46
  duration: import("tsondb/schema/def").MemberDecl<String, true>;
@@ -1,12 +1,12 @@
1
1
  import { Entity, Object, Optional, Required, String } from "tsondb/schema/def";
2
- import { NestedLocaleMap } from "./Locale.js";
2
+ import { NestedTranslationMap } from "./Locale.js";
3
3
  import { src } from "./source/_PublicationRef.js";
4
4
  export const SexPractice = Entity(import.meta.url, {
5
5
  name: "SexPractice",
6
6
  namePlural: "SexPractices",
7
7
  type: () => Object({
8
8
  src,
9
- translations: NestedLocaleMap(Required, "StateTranslation", Object({
9
+ translations: NestedTranslationMap(Required, "SexPractice", Object({
10
10
  name: Required({
11
11
  comment: "The sex practice’s name.",
12
12
  type: String({ minLength: 1 }),
@@ -31,7 +31,7 @@ export declare const Skill: Entity<"Skill", {
31
31
  group: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
32
32
  src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
33
33
  id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
34
- occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
34
+ occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<string, {
35
35
  initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
36
36
  printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
37
37
  pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
@@ -5,7 +5,7 @@ import { ChildEntities, Entity, Enum, EnumCase, IncludeIdentifier, Object, Optio
5
5
  import { SkillGroupIdentifier, SkillIdentifier } from "./_Identifier.js";
6
6
  import { ImprovementCost } from "./_ImprovementCost.js";
7
7
  import { SkillCheck } from "./_SkillCheck.js";
8
- import { NestedLocaleMap } from "./Locale.js";
8
+ import { NestedTranslationMap } from "./Locale.js";
9
9
  import { Errata } from "./source/_Erratum.js";
10
10
  import { src } from "./source/_PublicationRef.js";
11
11
  export const Skill = Entity(import.meta.url, {
@@ -33,7 +33,7 @@ export const Skill = Entity(import.meta.url, {
33
33
  type: SkillGroupIdentifier(),
34
34
  }),
35
35
  src,
36
- translations: NestedLocaleMap(Required, "SkillTranslation", Object({
36
+ translations: NestedTranslationMap(Required, "Skill", Object({
37
37
  name: Required({
38
38
  comment: "The skill’s name.",
39
39
  type: String({ minLength: 1 }),
@@ -103,7 +103,7 @@ export const SkillApplication = Entity(import.meta.url, {
103
103
  comment: "The skill this application belongs to.",
104
104
  type: SkillIdentifier(),
105
105
  }),
106
- translations: NestedLocaleMap(Required, "SkillApplicationTranslation", Object({
106
+ translations: NestedTranslationMap(Required, "SkillApplication", Object({
107
107
  name: Required({
108
108
  comment: "The skill application’s name.",
109
109
  type: String({ minLength: 1 }),