optolith-database-schema 0.26.3 → 0.26.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 (185) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/gen/types.d.ts +89 -12
  3. package/lib/types/Advantage.js +1 -1
  4. package/lib/types/AnimalDisease.js +1 -1
  5. package/lib/types/AnimalType.js +1 -1
  6. package/lib/types/ArcaneBardTradition.js +1 -1
  7. package/lib/types/ArcaneDancerTradition.js +1 -1
  8. package/lib/types/Aspect.js +1 -1
  9. package/lib/types/Attribute.js +1 -1
  10. package/lib/types/Blessing.js +1 -1
  11. package/lib/types/Cantrip.js +1 -1
  12. package/lib/types/Ceremony.d.ts +34 -4
  13. package/lib/types/Ceremony.js +1 -1
  14. package/lib/types/CombatTechnique.js +2 -2
  15. package/lib/types/Condition.js +1 -1
  16. package/lib/types/Continent.js +1 -1
  17. package/lib/types/Culture.js +1 -1
  18. package/lib/types/DerivedCharacteristic.js +1 -1
  19. package/lib/types/Disadvantage.js +1 -1
  20. package/lib/types/Disease.js +1 -1
  21. package/lib/types/Element.js +1 -1
  22. package/lib/types/ExperienceLevel.js +1 -1
  23. package/lib/types/EyeColor.js +1 -1
  24. package/lib/types/FamiliarsTrick.js +3 -1
  25. package/lib/types/HairColor.js +1 -1
  26. package/lib/types/HomunculusType.js +1 -1
  27. package/lib/types/Lessons.js +3 -3
  28. package/lib/types/LiturgicalChant.d.ts +34 -4
  29. package/lib/types/LiturgicalChant.js +1 -1
  30. package/lib/types/MetaCondition.js +1 -1
  31. package/lib/types/PactCategory.js +5 -5
  32. package/lib/types/Patron.js +1 -1
  33. package/lib/types/PatronCategory.js +1 -1
  34. package/lib/types/PersonalityTrait.js +1 -1
  35. package/lib/types/Profession.d.ts +14 -0
  36. package/lib/types/Profession.js +7 -7
  37. package/lib/types/Property.js +1 -1
  38. package/lib/types/Race.js +2 -3
  39. package/lib/types/Region.js +1 -1
  40. package/lib/types/Ritual.d.ts +34 -4
  41. package/lib/types/Ritual.js +1 -1
  42. package/lib/types/Service.js +1 -1
  43. package/lib/types/SexPractice.js +1 -1
  44. package/lib/types/Skill.js +2 -2
  45. package/lib/types/SkillGroup.js +1 -1
  46. package/lib/types/SkillModificationLevel.js +2 -2
  47. package/lib/types/SocialStatus.js +1 -1
  48. package/lib/types/Spell.d.ts +34 -4
  49. package/lib/types/Spell.js +1 -1
  50. package/lib/types/State.js +1 -1
  51. package/lib/types/Talisman.js +1 -1
  52. package/lib/types/TargetCategory.js +1 -1
  53. package/lib/types/_ActivatableAdventurePointsValue.js +3 -0
  54. package/lib/types/_ActivatableSelectOptions.js +2 -2
  55. package/lib/types/_ActivatableSkill.d.ts +70 -12
  56. package/lib/types/_ActivatableSkillApplicationsAndUses.js +4 -4
  57. package/lib/types/_ActivatableSkillCost.d.ts +66 -8
  58. package/lib/types/_ActivatableSkillCost.js +59 -15
  59. package/lib/types/_Enhancements.js +2 -2
  60. package/lib/types/_IdentifierGroup.d.ts +1 -0
  61. package/lib/types/_IdentifierGroup.js +1 -0
  62. package/lib/types/_Influence.js +1 -1
  63. package/lib/types/_SkillCheck.d.ts +1 -0
  64. package/lib/types/_SkillCheck.js +7 -18
  65. package/lib/types/equipment/EquipmentPackage.js +1 -1
  66. package/lib/types/equipment/item/Ammunition.js +1 -1
  67. package/lib/types/equipment/item/Animal.js +1 -1
  68. package/lib/types/equipment/item/AnimalCare.js +1 -1
  69. package/lib/types/equipment/item/Armor.js +1 -1
  70. package/lib/types/equipment/item/BandageOrRemedy.js +1 -1
  71. package/lib/types/equipment/item/Book.js +1 -1
  72. package/lib/types/equipment/item/CeremonialItem.js +1 -1
  73. package/lib/types/equipment/item/Clothes.js +1 -1
  74. package/lib/types/equipment/item/ClothingPackage.js +2 -2
  75. package/lib/types/equipment/item/Container.js +1 -1
  76. package/lib/types/equipment/item/Elixir.js +1 -1
  77. package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +1 -1
  78. package/lib/types/equipment/item/GemOrPreciousStone.js +1 -1
  79. package/lib/types/equipment/item/IlluminationLightSource.js +1 -1
  80. package/lib/types/equipment/item/IlluminationRefillOrSupply.js +1 -1
  81. package/lib/types/equipment/item/Jewelry.js +1 -1
  82. package/lib/types/equipment/item/Laboratory.js +1 -1
  83. package/lib/types/equipment/item/Liebesspielzeug.js +1 -1
  84. package/lib/types/equipment/item/LuxuryGood.js +1 -1
  85. package/lib/types/equipment/item/MagicalArtifact.js +1 -1
  86. package/lib/types/equipment/item/MusicalInstrument.js +1 -1
  87. package/lib/types/equipment/item/Newspaper.js +1 -1
  88. package/lib/types/equipment/item/Poison.js +1 -1
  89. package/lib/types/equipment/item/ToolOfTheTrade.js +1 -1
  90. package/lib/types/equipment/item/TravelGearOrTool.js +1 -1
  91. package/lib/types/equipment/item/Vehicle.js +1 -1
  92. package/lib/types/equipment/item/Weapon.js +1 -1
  93. package/lib/types/equipment/item/WeaponAccessory.js +1 -1
  94. package/lib/types/equipment/item/_Item.js +1 -1
  95. package/lib/types/equipment/item/sub/ArmorType.js +1 -1
  96. package/lib/types/equipment/item/sub/Reach.js +1 -1
  97. package/lib/types/magicalActions/AnimistPower.js +1 -1
  98. package/lib/types/magicalActions/AnimistPower_Tribe.js +1 -1
  99. package/lib/types/magicalActions/Curse.d.ts +1 -0
  100. package/lib/types/magicalActions/Curse.js +1 -1
  101. package/lib/types/magicalActions/DominationRitual.d.ts +1 -0
  102. package/lib/types/magicalActions/DominationRitual.js +1 -1
  103. package/lib/types/magicalActions/ElvenMagicalSong.d.ts +1 -0
  104. package/lib/types/magicalActions/ElvenMagicalSong.js +1 -1
  105. package/lib/types/magicalActions/GeodeRitual.d.ts +4 -4
  106. package/lib/types/magicalActions/GeodeRitual.js +3 -3
  107. package/lib/types/magicalActions/JesterTrick.d.ts +1 -0
  108. package/lib/types/magicalActions/JesterTrick.js +1 -1
  109. package/lib/types/magicalActions/MagicalDance.js +1 -1
  110. package/lib/types/magicalActions/MagicalMelody.d.ts +1 -0
  111. package/lib/types/magicalActions/MagicalMelody.js +1 -1
  112. package/lib/types/magicalActions/MagicalRune.js +2 -2
  113. package/lib/types/magicalActions/ZibiljaRitual.d.ts +5 -4
  114. package/lib/types/magicalActions/ZibiljaRitual.js +1 -1
  115. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +29 -0
  116. package/lib/types/prerequisites/PrerequisiteGroups.js +1 -0
  117. package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +1 -0
  118. package/lib/types/rule/AlternativeRule.js +1 -1
  119. package/lib/types/rule/AlternativeRule_PlayerType.js +1 -1
  120. package/lib/types/rule/CoreRule.js +1 -1
  121. package/lib/types/rule/FocusRule.js +1 -1
  122. package/lib/types/rule/FocusRule_Subject.js +1 -1
  123. package/lib/types/rule/OptionalRule.js +1 -1
  124. package/lib/types/source/Publication.js +1 -1
  125. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +1 -1
  126. package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +1 -1
  127. package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +1 -1
  128. package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +1 -1
  129. package/lib/types/specialAbility/AncestorGlyph.js +1 -1
  130. package/lib/types/specialAbility/BlessedTradition.js +1 -1
  131. package/lib/types/specialAbility/BrawlingSpecialAbility.js +1 -1
  132. package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +1 -1
  133. package/lib/types/specialAbility/CombatSpecialAbility.js +1 -1
  134. package/lib/types/specialAbility/CombatStyleSpecialAbility.js +1 -1
  135. package/lib/types/specialAbility/CommandSpecialAbility.js +1 -1
  136. package/lib/types/specialAbility/FamiliarSpecialAbility.js +1 -1
  137. package/lib/types/specialAbility/FatePointSexSpecialAbility.js +1 -1
  138. package/lib/types/specialAbility/FatePointSpecialAbility.js +1 -1
  139. package/lib/types/specialAbility/GeneralSpecialAbility.js +1 -1
  140. package/lib/types/specialAbility/KarmaSpecialAbility.js +1 -1
  141. package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +1 -1
  142. package/lib/types/specialAbility/LycantropicGift.js +1 -1
  143. package/lib/types/specialAbility/MagicStyleSpecialAbility.js +1 -1
  144. package/lib/types/specialAbility/MagicalSign.d.ts +4 -4
  145. package/lib/types/specialAbility/MagicalSign.js +3 -3
  146. package/lib/types/specialAbility/MagicalSpecialAbility.js +1 -1
  147. package/lib/types/specialAbility/MagicalTradition.js +1 -1
  148. package/lib/types/specialAbility/PactGift.js +1 -1
  149. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +1 -1
  150. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +2 -2
  151. package/lib/types/specialAbility/Sermon.js +1 -1
  152. package/lib/types/specialAbility/SexSpecialAbility.js +1 -1
  153. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +1 -1
  154. package/lib/types/specialAbility/SkillStyleSpecialAbility.js +1 -1
  155. package/lib/types/specialAbility/VampiricGift.js +1 -1
  156. package/lib/types/specialAbility/Vision.js +1 -1
  157. package/lib/types/specialAbility/sub/Language.js +2 -2
  158. package/lib/types/specialAbility/sub/Script.js +1 -1
  159. package/lib/types/specialAbility/sub/TradeSecret.js +4 -4
  160. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +1 -1
  161. package/lib/types/traditionArtifacts/AttireEnchantment.js +1 -1
  162. package/lib/types/traditionArtifacts/Beutelzauber.js +1 -1
  163. package/lib/types/traditionArtifacts/BowlEnchantment.js +1 -1
  164. package/lib/types/traditionArtifacts/CauldronEnchantment.js +1 -1
  165. package/lib/types/traditionArtifacts/ChronicleEnchantment.js +1 -1
  166. package/lib/types/traditionArtifacts/DaggerRitual.js +1 -1
  167. package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +3 -1
  168. package/lib/types/traditionArtifacts/Haubenzauber.js +1 -1
  169. package/lib/types/traditionArtifacts/InstrumentEnchantment.js +1 -1
  170. package/lib/types/traditionArtifacts/Krallenkettenzauber.js +1 -1
  171. package/lib/types/traditionArtifacts/Kristallkugelzauber.js +1 -1
  172. package/lib/types/traditionArtifacts/OrbEnchantment.js +1 -1
  173. package/lib/types/traditionArtifacts/RingEnchantment.js +1 -1
  174. package/lib/types/traditionArtifacts/SickleRitual.js +1 -1
  175. package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +1 -1
  176. package/lib/types/traditionArtifacts/StaffEnchantment.js +1 -1
  177. package/lib/types/traditionArtifacts/ToyEnchantment.js +1 -1
  178. package/lib/types/traditionArtifacts/Trinkhornzauber.js +1 -1
  179. package/lib/types/traditionArtifacts/WandEnchantment.js +1 -1
  180. package/lib/types/traditionArtifacts/WeaponEnchantment.js +1 -1
  181. package/lib/types/traditionArtifacts/sub/AnimalShape.js +1 -1
  182. package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +1 -1
  183. package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +1 -1
  184. package/lib/types/traditionArtifacts/sub/Brew.js +1 -1
  185. package/package.json +2 -2
package/CHANGELOG.md CHANGED
@@ -2,6 +2,29 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [0.26.5](https://github.com/elyukai/optolith-database-schema/compare/v0.26.4...v0.26.5) (2025-12-29)
6
+
7
+
8
+ ### Features
9
+
10
+ * add some display names ([6cb3f40](https://github.com/elyukai/optolith-database-schema/commit/6cb3f40f7e1cb43ec02fcb48030b72613d194701))
11
+
12
+
13
+ ### Bug Fixes
14
+
15
+ * duplicate cost map translation identifier ([6fad16b](https://github.com/elyukai/optolith-database-schema/commit/6fad16bf98ede7dc3f41ec6afb153eb2ad4b9d84))
16
+
17
+ ## [0.26.4](https://github.com/elyukai/optolith-database-schema/compare/v0.26.3...v0.26.4) (2025-12-29)
18
+
19
+
20
+ ### Features
21
+
22
+ * add object as skill check penalty ([f3ea105](https://github.com/elyukai/optolith-database-schema/commit/f3ea105280387cbfb70c988aecd4285fb9e91572)), closes [#101](https://github.com/elyukai/optolith-database-schema/issues/101)
23
+ * add race as requirable select option ([e3bd65f](https://github.com/elyukai/optolith-database-schema/commit/e3bd65f71194c136130265d5bff24d9fe71f3dcc)), closes [#99](https://github.com/elyukai/optolith-database-schema/issues/99)
24
+ * add rated option to enhancement prerequisite ([ae43d2a](https://github.com/elyukai/optolith-database-schema/commit/ae43d2ab12e9313260b96bac931a75e730d69423)), closes [#103](https://github.com/elyukai/optolith-database-schema/issues/103)
25
+ * add sustained skill cost map ([1fd987d](https://github.com/elyukai/optolith-database-schema/commit/1fd987de4fe3b0a5e72eaa49f95252c9cb7e6cdb)), closes [#102](https://github.com/elyukai/optolith-database-schema/issues/102)
26
+ * warding circle text is optional ([8a4903e](https://github.com/elyukai/optolith-database-schema/commit/8a4903ebdcd1e2e8c77a220cc272421913f42493)), closes [#105](https://github.com/elyukai/optolith-database-schema/issues/105)
27
+
5
28
  ## [0.26.3](https://github.com/elyukai/optolith-database-schema/compare/v0.26.2...v0.26.3) (2025-12-28)
6
29
 
7
30
 
package/gen/types.d.ts CHANGED
@@ -4010,6 +4010,10 @@ export type RequirableSelectOptionIdentifier =
4010
4010
  kind: "General"
4011
4011
  General: GeneralSelectOption_ID
4012
4012
  }
4013
+ | {
4014
+ kind: "Race"
4015
+ Race: Race_ID
4016
+ }
4013
4017
  | {
4014
4018
  kind: "Skill"
4015
4019
  Skill: Skill_ID
@@ -4462,6 +4466,9 @@ export type SkillCheckPenalty =
4462
4466
  | {
4463
4467
  kind: "CreationDifficulty"
4464
4468
  }
4469
+ | {
4470
+ kind: "Object"
4471
+ }
4465
4472
 
4466
4473
  export type FastPerformanceParameters =
4467
4474
  | {
@@ -4497,7 +4504,7 @@ export type OneTimeCost =
4497
4504
  }
4498
4505
  | {
4499
4506
  kind: "Map"
4500
- Map: CostMap
4507
+ Map: OneTimeCostMap
4501
4508
  }
4502
4509
 
4503
4510
  export type SingleOneTimeCost =
@@ -4775,21 +4782,21 @@ export type MultipleOneTimeCosts = SingleOneTimeCost[]
4775
4782
  *
4776
4783
  * This will generate the exact same string as seen above – given it is set for a spellwork and thus `AE` is used.
4777
4784
  */
4778
- export interface CostMap {
4785
+ export interface OneTimeCostMap {
4779
4786
  /**
4780
4787
  * The possible costs and associated labels.
4781
4788
  */
4782
- options: CostMapOption[]
4789
+ options: OneTimeCostMapOption[]
4783
4790
 
4784
4791
  /**
4785
4792
  * All translations for the entry, identified by IETF language tag (BCP47).
4786
4793
  */
4787
4794
  translations?: {
4788
- [localeId: string]: CostMapTranslation
4795
+ [localeId: string]: OneTimeCostMapTranslation
4789
4796
  }
4790
4797
  }
4791
4798
 
4792
- export interface CostMapTranslation {
4799
+ export interface OneTimeCostMapTranslation {
4793
4800
  /**
4794
4801
  * Place a string between the `for` and the grouped map option labels.
4795
4802
  */
@@ -4806,7 +4813,7 @@ export interface CostMapTranslation {
4806
4813
  replacement?: ResponsiveTextOptional
4807
4814
  }
4808
4815
 
4809
- export interface CostMapOption {
4816
+ export interface OneTimeCostMapOption {
4810
4817
  /**
4811
4818
  * The full cost value for this option.
4812
4819
  */
@@ -4821,18 +4828,18 @@ export interface CostMapOption {
4821
4828
  * All translations for the entry, identified by IETF language tag (BCP47).
4822
4829
  */
4823
4830
  translations?: {
4824
- [localeId: string]: CostMapOptionTranslation
4831
+ [localeId: string]: OneTimeCostMapOptionTranslation
4825
4832
  }
4826
4833
  }
4827
4834
 
4828
- export interface CostMapOptionTranslation {
4835
+ export interface OneTimeCostMapOptionTranslation {
4829
4836
  /**
4830
4837
  * The description of the option for cost string generation.
4831
4838
  */
4832
4839
  label: ResponsiveTextOptional
4833
4840
 
4834
4841
  /**
4835
- * The description of the option if used standalone. Only used if different from `label`.
4842
+ * The description of the option if used standalone (e.g. in an in-game tool where you can select how many AE you have to pay). Only used if different from `label`.
4836
4843
  */
4837
4844
  label_standalone?: ResponsiveTextOptional
4838
4845
  }
@@ -5267,6 +5274,10 @@ export type SustainedCost =
5267
5274
  kind: "NonModifiable"
5268
5275
  NonModifiable: NonModifiableSustainedCost
5269
5276
  }
5277
+ | {
5278
+ kind: "Map"
5279
+ Map: SustainedCostMap
5280
+ }
5270
5281
 
5271
5282
  export interface ModifiableSustainedCost {
5272
5283
  /**
@@ -5323,6 +5334,68 @@ export interface NonModifiableSustainedCostPerCountableTranslation {
5323
5334
  countable: ResponsiveText
5324
5335
  }
5325
5336
 
5337
+ /**
5338
+ * A content that is `2/4/8/16 AE (activation) + 1/2/4/8 per 5 minutes for an item the size of a cup/chest/door/castle gate` can be represented as a cost map.
5339
+ *
5340
+ * The `an item the size of a` would be the *list prefix* string, while the list of options would contain four options with the activation cost and the name.
5341
+ */
5342
+ export interface SustainedCostMap {
5343
+ /**
5344
+ * The possible costs and associated labels.
5345
+ */
5346
+ options: SustainedCostMapOption[]
5347
+
5348
+ /**
5349
+ * All translations for the entry, identified by IETF language tag (BCP47).
5350
+ */
5351
+ translations?: {
5352
+ [localeId: string]: SustainedCostMapTranslation
5353
+ }
5354
+ }
5355
+
5356
+ export interface SustainedCostMapTranslation {
5357
+ /**
5358
+ * Place a string between the `for` and the grouped map option labels.
5359
+ */
5360
+ listPrefix?: ResponsiveTextOptional
5361
+
5362
+ /**
5363
+ * Place a string after the grouped map option labels.
5364
+ */
5365
+ listSuffix?: ResponsiveTextOptional
5366
+
5367
+ /**
5368
+ * If the string from the book cannot be generated using the default generation technique, use this string. All options still need to be inserted propertly, since it may be used by in-game tools to provide a selection to players.
5369
+ */
5370
+ replacement?: ResponsiveTextOptional
5371
+ }
5372
+
5373
+ export interface SustainedCostMapOption {
5374
+ /**
5375
+ * The activation cost value for this option. The interval cost is always half of this value.
5376
+ */
5377
+ value: number
5378
+
5379
+ /**
5380
+ * All translations for the entry, identified by IETF language tag (BCP47).
5381
+ */
5382
+ translations?: {
5383
+ [localeId: string]: SustainedCostMapOptionTranslation
5384
+ }
5385
+ }
5386
+
5387
+ export interface SustainedCostMapOptionTranslation {
5388
+ /**
5389
+ * The description of the option for cost string generation.
5390
+ */
5391
+ label: ResponsiveTextOptional
5392
+
5393
+ /**
5394
+ * The description of the option if used standalone (e.g. in an in-game tool where you can select how many AE you have to pay). Only used if different from `label`.
5395
+ */
5396
+ standaloneLabel?: ResponsiveTextOptional
5397
+ }
5398
+
5326
5399
  export interface DurationForSustained {
5327
5400
  /**
5328
5401
  * The sustained skill can be active a maximum amount of time.
@@ -6856,6 +6929,10 @@ export type EnhancementPrerequisiteGroup =
6856
6929
  kind: "Enhancement"
6857
6930
  Enhancement: EnhancementPrerequisite
6858
6931
  }
6932
+ | {
6933
+ kind: "Rated"
6934
+ Rated: RatedPrerequisite
6935
+ }
6859
6936
 
6860
6937
  /**
6861
6938
  * Requires a specific enhancement from a skill.
@@ -13565,7 +13642,7 @@ export type MagicalSignCost =
13565
13642
  }
13566
13643
  | {
13567
13644
  kind: "Map"
13568
- Map: CostMap
13645
+ Map: OneTimeCostMap
13569
13646
  }
13570
13647
 
13571
13648
  export interface ConstantMagicalSignCost {
@@ -14161,7 +14238,7 @@ export interface ProtectiveWardingCircleSpecialAbilityTranslation {
14161
14238
  /**
14162
14239
  * The rules for the warding circle variant.
14163
14240
  */
14164
- warding_circle: string
14241
+ warding_circle?: string
14165
14242
 
14166
14243
  /**
14167
14244
  * The string to append to the generated AP value text.
@@ -17035,7 +17112,7 @@ export type GeodeRitualCost =
17035
17112
  }
17036
17113
  | {
17037
17114
  kind: "Map"
17038
- Map: CostMap
17115
+ Map: OneTimeCostMap
17039
17116
  }
17040
17117
 
17041
17118
  export interface FixedGeodeRitualCost {
@@ -45,7 +45,7 @@ export const Advantage = Entity(import.meta.url, {
45
45
  }),
46
46
  })),
47
47
  }),
48
- displayName: {},
48
+ instanceDisplayName: {},
49
49
  uniqueConstraints: [
50
50
  {
51
51
  entityMapKeyPath: "translations",
@@ -25,7 +25,7 @@ If no causes are given, the disease is not communicable to intelligent creatures
25
25
  src,
26
26
  translations: NestedTranslationMap(Required, "AnimalDisease", DiseaseTranslation),
27
27
  }),
28
- displayName: {},
28
+ instanceDisplayName: {},
29
29
  uniqueConstraints: [
30
30
  {
31
31
  entityMapKeyPath: "translations",
@@ -11,7 +11,7 @@ export const AnimalType = Entity(import.meta.url, {
11
11
  }),
12
12
  })),
13
13
  }),
14
- displayName: {},
14
+ instanceDisplayName: {},
15
15
  uniqueConstraints: [
16
16
  {
17
17
  entityMapKeyPath: "translations",
@@ -4,7 +4,7 @@ export const ArcaneBardTradition = Entity(import.meta.url, {
4
4
  name: "ArcaneBardTradition",
5
5
  namePlural: "ArcaneBardTraditions",
6
6
  type: ArcaneTraditionType("ArcaneBardTraditionTranslation"),
7
- displayName: {},
7
+ instanceDisplayName: {},
8
8
  uniqueConstraints: [
9
9
  {
10
10
  entityMapKeyPath: "translations",
@@ -4,7 +4,7 @@ export const ArcaneDancerTradition = Entity(import.meta.url, {
4
4
  name: "ArcaneDancerTradition",
5
5
  namePlural: "ArcaneDancerTraditions",
6
6
  type: ArcaneTraditionType("ArcaneDancerTraditionTranslation"),
7
- displayName: {},
7
+ instanceDisplayName: {},
8
8
  uniqueConstraints: [
9
9
  {
10
10
  entityMapKeyPath: "translations",
@@ -17,7 +17,7 @@ export const Aspect = Entity(import.meta.url, {
17
17
  }),
18
18
  })),
19
19
  }),
20
- displayName: {},
20
+ instanceDisplayName: {},
21
21
  uniqueConstraints: [
22
22
  {
23
23
  entityMapKeyPath: "translations",
@@ -20,7 +20,7 @@ export const Attribute = Entity(import.meta.url, {
20
20
  }),
21
21
  })),
22
22
  }),
23
- displayName: {},
23
+ instanceDisplayName: {},
24
24
  uniqueConstraints: [
25
25
  {
26
26
  entityMapKeyPath: "translations",
@@ -44,7 +44,7 @@ export const Blessing = Entity(import.meta.url, {
44
44
  }),
45
45
  })),
46
46
  }),
47
- displayName: {},
47
+ instanceDisplayName: {},
48
48
  uniqueConstraints: [
49
49
  {
50
50
  entityMapKeyPath: "translations",
@@ -55,7 +55,7 @@ export const Cantrip = Entity(import.meta.url, {
55
55
  }),
56
56
  })),
57
57
  }),
58
- displayName: {},
58
+ instanceDisplayName: {},
59
59
  uniqueConstraints: [
60
60
  {
61
61
  entityMapKeyPath: "translations",
@@ -8,6 +8,7 @@ export declare const Ceremony: Entity<"Ceremony", {
8
8
  HigherOfSpiritAndToughness: import("tsondb/schema/def").EnumCaseDecl<null>;
9
9
  SummoningDifficulty: import("tsondb/schema/def").EnumCaseDecl<null>;
10
10
  CreationDifficulty: import("tsondb/schema/def").EnumCaseDecl<null>;
11
+ Object: import("tsondb/schema/def").EnumCaseDecl<null>;
11
12
  }, []>>, false>;
12
13
  parameters: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"SlowPerformanceParameters", {
13
14
  OneTime: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SlowOneTimePerformanceParameters", IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").TypeAliasDecl<"OneTimePerformanceParameters", Object<{
@@ -133,11 +134,11 @@ export declare const Ceremony: Entity<"Ceremony", {
133
134
  }>, true>;
134
135
  }>, []>>>;
135
136
  }, []>>>, []>>>;
136
- Map: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"CostMap", Object<{
137
- options: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"CostMapOption", Object<{
137
+ Map: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"OneTimeCostMap", Object<{
138
+ options: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"OneTimeCostMapOption", Object<{
138
139
  value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
139
140
  permanent_value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
140
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"CostMapOptionTranslation", {
141
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"OneTimeCostMapOptionTranslation", {
141
142
  label: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
142
143
  full: import("tsondb/schema/def").MemberDecl<String, true>;
143
144
  compressed: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -148,7 +149,7 @@ export declare const Ceremony: Entity<"Ceremony", {
148
149
  }>, []>>, false>;
149
150
  }>, false>;
150
151
  }>, []>>>, true>;
151
- translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"CostMapTranslation", {
152
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"OneTimeCostMapTranslation", {
152
153
  list_prepend: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
153
154
  full: import("tsondb/schema/def").MemberDecl<String, true>;
154
155
  compressed: import("tsondb/schema/def").MemberDecl<String, false>;
@@ -360,6 +361,35 @@ export declare const Ceremony: Entity<"Ceremony", {
360
361
  }, []>>, true>;
361
362
  }>, []>>, true>;
362
363
  }>, []>>>;
364
+ Map: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SustainedCostMap", Object<{
365
+ options: import("tsondb/schema/def").MemberDecl<Array<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"SustainedCostMapOption", Object<{
366
+ value: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
367
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SustainedCostMapOptionTranslation", {
368
+ label: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
369
+ full: import("tsondb/schema/def").MemberDecl<String, true>;
370
+ compressed: import("tsondb/schema/def").MemberDecl<String, false>;
371
+ }>, []>>, true>;
372
+ standaloneLabel: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
373
+ full: import("tsondb/schema/def").MemberDecl<String, true>;
374
+ compressed: import("tsondb/schema/def").MemberDecl<String, false>;
375
+ }>, []>>, false>;
376
+ }>, false>;
377
+ }>, []>>>, true>;
378
+ translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"SustainedCostMapTranslation", {
379
+ listPrefix: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
380
+ full: import("tsondb/schema/def").MemberDecl<String, true>;
381
+ compressed: import("tsondb/schema/def").MemberDecl<String, false>;
382
+ }>, []>>, false>;
383
+ listSuffix: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
384
+ full: import("tsondb/schema/def").MemberDecl<String, true>;
385
+ compressed: import("tsondb/schema/def").MemberDecl<String, false>;
386
+ }>, []>>, false>;
387
+ replacement: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"ResponsiveTextOptional", Object<{
388
+ full: import("tsondb/schema/def").MemberDecl<String, true>;
389
+ compressed: import("tsondb/schema/def").MemberDecl<String, false>;
390
+ }>, []>>, false>;
391
+ }>, false>;
392
+ }>, []>>>;
363
393
  }, []>>, true>;
364
394
  range: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").TypeAliasDecl<"Range", Object<{
365
395
  value: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"RangeValue", {
@@ -84,7 +84,7 @@ export const Ceremony = Entity(import.meta.url, {
84
84
  type: ChildEntities(Enhancement),
85
85
  }),
86
86
  }),
87
- displayName: {},
87
+ instanceDisplayName: {},
88
88
  uniqueConstraints: [
89
89
  {
90
90
  entityMapKeyPath: "translations",
@@ -39,7 +39,7 @@ export const CloseCombatTechnique = Entity(import.meta.url, {
39
39
  }),
40
40
  })),
41
41
  }),
42
- displayName: {},
42
+ instanceDisplayName: {},
43
43
  uniqueConstraints: [
44
44
  {
45
45
  entityMapKeyPath: "translations",
@@ -114,7 +114,7 @@ export const RangedCombatTechnique = Entity(import.meta.url, {
114
114
  }),
115
115
  })),
116
116
  }),
117
- displayName: {},
117
+ instanceDisplayName: {},
118
118
  uniqueConstraints: [
119
119
  {
120
120
  entityMapKeyPath: "translations",
@@ -28,7 +28,7 @@ export const Condition = Entity(import.meta.url, {
28
28
  }),
29
29
  })),
30
30
  }),
31
- displayName: {},
31
+ instanceDisplayName: {},
32
32
  uniqueConstraints: [
33
33
  {
34
34
  entityMapKeyPath: "translations",
@@ -12,7 +12,7 @@ export const Continent = Entity(import.meta.url, {
12
12
  }),
13
13
  })),
14
14
  }),
15
- displayName: {},
15
+ instanceDisplayName: {},
16
16
  uniqueConstraints: [
17
17
  {
18
18
  entityMapKeyPath: "translations",
@@ -93,7 +93,7 @@ export const Culture = Entity(import.meta.url, {
93
93
  }),
94
94
  })),
95
95
  }),
96
- displayName: {},
96
+ instanceDisplayName: {},
97
97
  uniqueConstraints: [
98
98
  {
99
99
  entityMapKeyPath: "translations",
@@ -25,7 +25,7 @@ export const DerivedCharacteristic = Entity(import.meta.url, {
25
25
  }),
26
26
  })),
27
27
  }),
28
- displayName: {},
28
+ instanceDisplayName: {},
29
29
  uniqueConstraints: [
30
30
  {
31
31
  entityMapKeyPath: "translations",
@@ -46,7 +46,7 @@ export const Disadvantage = Entity(import.meta.url, {
46
46
  }),
47
47
  })),
48
48
  }),
49
- displayName: {},
49
+ instanceDisplayName: {},
50
50
  uniqueConstraints: [
51
51
  {
52
52
  entityMapKeyPath: "translations",
@@ -17,7 +17,7 @@ export const Disease = Entity(import.meta.url, {
17
17
  src,
18
18
  translations: NestedTranslationMap(Required, "Disease", DiseaseTranslation),
19
19
  }),
20
- displayName: {},
20
+ instanceDisplayName: {},
21
21
  uniqueConstraints: [
22
22
  {
23
23
  entityMapKeyPath: "translations",
@@ -11,7 +11,7 @@ export const Element = Entity(import.meta.url, {
11
11
  }),
12
12
  })),
13
13
  }),
14
- displayName: {},
14
+ instanceDisplayName: {},
15
15
  uniqueConstraints: [
16
16
  {
17
17
  entityMapKeyPath: "translations",
@@ -40,7 +40,7 @@ export const ExperienceLevel = Entity(import.meta.url, {
40
40
  }),
41
41
  })),
42
42
  }),
43
- displayName: {},
43
+ instanceDisplayName: {},
44
44
  uniqueConstraints: [
45
45
  {
46
46
  entityMapKeyPath: "translations",
@@ -11,7 +11,7 @@ export const EyeColor = Entity(import.meta.url, {
11
11
  }),
12
12
  })),
13
13
  }),
14
- displayName: {},
14
+ instanceDisplayName: {},
15
15
  uniqueConstraints: [
16
16
  {
17
17
  entityMapKeyPath: "translations",
@@ -10,6 +10,8 @@ import { src } from "./source/_PublicationRef.js";
10
10
  export const FamiliarsTrick = Entity(import.meta.url, {
11
11
  name: "FamiliarsTrick",
12
12
  namePlural: "FamiliarsTricks",
13
+ displayName: "Familiar’s Trick",
14
+ displayNamePlural: "Familiar’s Tricks",
13
15
  type: () => Object({
14
16
  animal_types: Required({
15
17
  comment: `The animal types this trick is available to. Either it is available to all or only a list of specific animal types.
@@ -52,7 +54,7 @@ If no animal types are given, the animal disease applies to all animal types.`,
52
54
  }),
53
55
  })),
54
56
  }),
55
- displayName: {},
57
+ instanceDisplayName: {},
56
58
  uniqueConstraints: [
57
59
  {
58
60
  entityMapKeyPath: "translations",
@@ -11,7 +11,7 @@ export const HairColor = Entity(import.meta.url, {
11
11
  }),
12
12
  })),
13
13
  }),
14
- displayName: {},
14
+ instanceDisplayName: {},
15
15
  uniqueConstraints: [
16
16
  {
17
17
  entityMapKeyPath: "translations",
@@ -11,5 +11,5 @@ export const HomunculusType = Entity(import.meta.url, {
11
11
  }),
12
12
  })),
13
13
  }),
14
- displayName: {},
14
+ instanceDisplayName: {},
15
15
  });
@@ -19,7 +19,7 @@ export const Guideline = Entity(import.meta.url, {
19
19
  }),
20
20
  })),
21
21
  }),
22
- displayName: {},
22
+ instanceDisplayName: {},
23
23
  uniqueConstraints: [
24
24
  {
25
25
  entityMapKeyPath: "translations",
@@ -59,7 +59,7 @@ export const Curriculum = Entity(import.meta.url, {
59
59
  }),
60
60
  })),
61
61
  }),
62
- displayName: {},
62
+ instanceDisplayName: {},
63
63
  uniqueConstraints: [
64
64
  {
65
65
  entityMapKeyPath: "translations",
@@ -161,7 +161,7 @@ export const LessonPackage = Entity(import.meta.url, {
161
161
  })),
162
162
  }, { minProperties: 3 }),
163
163
  parentReferenceKey: "curriculum",
164
- displayName: {},
164
+ instanceDisplayName: {},
165
165
  });
166
166
  const SpellworkChange = TypeAlias(import.meta.url, {
167
167
  name: "SpellworkChange",