@optolith/database-schema 0.42.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.
- package/AUTHORS +1 -0
- package/CHANGELOG.md +1789 -0
- package/LICENSE +378 -0
- package/README.md +34 -0
- package/gen/types.d.ts +24682 -0
- package/lib/cache/activatableSelectOptions.d.ts +18 -0
- package/lib/cache/activatableSelectOptions.js +762 -0
- package/lib/cache/ancestorBloodAdvantages.d.ts +4 -0
- package/lib/cache/ancestorBloodAdvantages.js +13 -0
- package/lib/cache/index.d.ts +31 -0
- package/lib/cache/index.js +22 -0
- package/lib/cache/internal.d.ts +4 -0
- package/lib/cache/internal.js +1 -0
- package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.d.ts +3 -0
- package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.js +103 -0
- package/lib/cache/newApplicationsAndUses.d.ts +22 -0
- package/lib/cache/newApplicationsAndUses.js +12 -0
- package/lib/main.d.ts +17 -0
- package/lib/main.js +226 -0
- package/lib/test.d.ts +1 -0
- package/lib/test.js +11 -0
- package/lib/types/Advantage.d.ts +1193 -0
- package/lib/types/Advantage.js +58 -0
- package/lib/types/AnimalDisease.d.ts +91 -0
- package/lib/types/AnimalDisease.js +35 -0
- package/lib/types/AnimalType.d.ts +6 -0
- package/lib/types/AnimalType.js +21 -0
- package/lib/types/ArcaneBardTradition.d.ts +30 -0
- package/lib/types/ArcaneBardTradition.js +14 -0
- package/lib/types/ArcaneDancerTradition.d.ts +30 -0
- package/lib/types/ArcaneDancerTradition.js +14 -0
- package/lib/types/Aspect.d.ts +7 -0
- package/lib/types/Aspect.js +27 -0
- package/lib/types/Attribute.d.ts +19 -0
- package/lib/types/Attribute.js +49 -0
- package/lib/types/Blessing.d.ts +106 -0
- package/lib/types/Blessing.js +102 -0
- package/lib/types/Cantrip.d.ts +134 -0
- package/lib/types/Cantrip.js +166 -0
- package/lib/types/Ceremony.d.ts +685 -0
- package/lib/types/Ceremony.js +94 -0
- package/lib/types/CombatTechnique.d.ts +153 -0
- package/lib/types/CombatTechnique.js +133 -0
- package/lib/types/Condition.d.ts +53 -0
- package/lib/types/Condition.js +38 -0
- package/lib/types/Continent.d.ts +6 -0
- package/lib/types/Continent.js +22 -0
- package/lib/types/Culture.d.ts +158 -0
- package/lib/types/Culture.js +374 -0
- package/lib/types/DerivedCharacteristic.d.ts +267 -0
- package/lib/types/DerivedCharacteristic.js +227 -0
- package/lib/types/Disadvantage.d.ts +1120 -0
- package/lib/types/Disadvantage.js +59 -0
- package/lib/types/Disease.d.ts +111 -0
- package/lib/types/Disease.js +35 -0
- package/lib/types/Element.d.ts +6 -0
- package/lib/types/Element.js +21 -0
- package/lib/types/ExperienceLevel.d.ts +13 -0
- package/lib/types/ExperienceLevel.js +56 -0
- package/lib/types/EyeColor.d.ts +6 -0
- package/lib/types/EyeColor.js +21 -0
- package/lib/types/FamiliarsTrick.d.ts +192 -0
- package/lib/types/FamiliarsTrick.js +202 -0
- package/lib/types/HairColor.d.ts +6 -0
- package/lib/types/HairColor.js +21 -0
- package/lib/types/HomunculusType.d.ts +6 -0
- package/lib/types/HomunculusType.js +15 -0
- package/lib/types/Influence.d.ts +80 -0
- package/lib/types/Influence.js +52 -0
- package/lib/types/Lessons.d.ts +181 -0
- package/lib/types/Lessons.js +230 -0
- package/lib/types/LiturgicalChant.d.ts +685 -0
- package/lib/types/LiturgicalChant.js +94 -0
- package/lib/types/Locale.d.ts +1607 -0
- package/lib/types/Locale.js +1747 -0
- package/lib/types/MetaCondition.d.ts +53 -0
- package/lib/types/MetaCondition.js +39 -0
- package/lib/types/PactCategory.d.ts +75 -0
- package/lib/types/PactCategory.js +102 -0
- package/lib/types/Patron.d.ts +101 -0
- package/lib/types/Patron.js +203 -0
- package/lib/types/PatronCategory.d.ts +7 -0
- package/lib/types/PatronCategory.js +26 -0
- package/lib/types/PersonalityTrait.d.ts +81 -0
- package/lib/types/PersonalityTrait.js +58 -0
- package/lib/types/Profession.d.ts +2120 -0
- package/lib/types/Profession.js +631 -0
- package/lib/types/Property.d.ts +7 -0
- package/lib/types/Property.js +26 -0
- package/lib/types/Race.d.ts +207 -0
- package/lib/types/Race.js +332 -0
- package/lib/types/Region.d.ts +6 -0
- package/lib/types/Region.js +21 -0
- package/lib/types/Ritual.d.ts +688 -0
- package/lib/types/Ritual.js +96 -0
- package/lib/types/Service.d.ts +56 -0
- package/lib/types/Service.js +45 -0
- package/lib/types/SexPractice.d.ts +51 -0
- package/lib/types/SexPractice.js +39 -0
- package/lib/types/Skill.d.ts +116 -0
- package/lib/types/Skill.js +139 -0
- package/lib/types/SkillGroup.d.ts +17 -0
- package/lib/types/SkillGroup.js +45 -0
- package/lib/types/SkillModificationLevel.d.ts +34 -0
- package/lib/types/SkillModificationLevel.js +116 -0
- package/lib/types/SocialStatus.d.ts +7 -0
- package/lib/types/SocialStatus.js +26 -0
- package/lib/types/Spell.d.ts +688 -0
- package/lib/types/Spell.js +96 -0
- package/lib/types/State.d.ts +52 -0
- package/lib/types/State.js +31 -0
- package/lib/types/Talisman.d.ts +135 -0
- package/lib/types/Talisman.js +168 -0
- package/lib/types/TargetCategory.d.ts +7 -0
- package/lib/types/TargetCategory.js +26 -0
- package/lib/types/_Activatable.d.ts +12 -0
- package/lib/types/_Activatable.js +43 -0
- package/lib/types/_ActivatableAdvanced.d.ts +50 -0
- package/lib/types/_ActivatableAdvanced.js +101 -0
- package/lib/types/_ActivatableAdventurePointsValue.d.ts +159 -0
- package/lib/types/_ActivatableAdventurePointsValue.js +148 -0
- package/lib/types/_ActivatableAutomatic.d.ts +74 -0
- package/lib/types/_ActivatableAutomatic.js +64 -0
- package/lib/types/_ActivatableCombat.d.ts +123 -0
- package/lib/types/_ActivatableCombat.js +350 -0
- package/lib/types/_ActivatableNames.d.ts +15 -0
- package/lib/types/_ActivatableNames.js +26 -0
- package/lib/types/_ActivatableNonMundane.d.ts +387 -0
- package/lib/types/_ActivatableNonMundane.js +536 -0
- package/lib/types/_ActivatableSelectOptionCategory.d.ts +1380 -0
- package/lib/types/_ActivatableSelectOptionCategory.js +478 -0
- package/lib/types/_ActivatableSelectOptions.d.ts +1077 -0
- package/lib/types/_ActivatableSelectOptions.js +218 -0
- package/lib/types/_ActivatableSkill.d.ts +1231 -0
- package/lib/types/_ActivatableSkill.js +89 -0
- package/lib/types/_ActivatableSkillApplicationsAndUses.d.ts +109 -0
- package/lib/types/_ActivatableSkillApplicationsAndUses.js +80 -0
- package/lib/types/_ActivatableSkillCastingTime.d.ts +66 -0
- package/lib/types/_ActivatableSkillCastingTime.js +92 -0
- package/lib/types/_ActivatableSkillCheckResultBased.d.ts +27 -0
- package/lib/types/_ActivatableSkillCheckResultBased.js +45 -0
- package/lib/types/_ActivatableSkillCost.d.ts +366 -0
- package/lib/types/_ActivatableSkillCost.js +280 -0
- package/lib/types/_ActivatableSkillDuration.d.ts +204 -0
- package/lib/types/_ActivatableSkillDuration.js +138 -0
- package/lib/types/_ActivatableSkillEffect.d.ts +16 -0
- package/lib/types/_ActivatableSkillEffect.js +65 -0
- package/lib/types/_ActivatableSkillRange.d.ts +62 -0
- package/lib/types/_ActivatableSkillRange.js +106 -0
- package/lib/types/_ActivatableSkillTargetCategory.d.ts +14 -0
- package/lib/types/_ActivatableSkillTargetCategory.js +30 -0
- package/lib/types/_AlternativeNames.d.ts +5 -0
- package/lib/types/_AlternativeNames.js +14 -0
- package/lib/types/_ArcaneTradition.d.ts +30 -0
- package/lib/types/_ArcaneTradition.js +14 -0
- package/lib/types/_Blessed.d.ts +8 -0
- package/lib/types/_Blessed.js +22 -0
- package/lib/types/_Color.d.ts +19 -0
- package/lib/types/_Color.js +27 -0
- package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +7 -0
- package/lib/types/_CommonnessRatedAdvantageDisadvantage.js +19 -0
- package/lib/types/_Dice.d.ts +6 -0
- package/lib/types/_Dice.js +23 -0
- package/lib/types/_DiseasePoison.d.ts +59 -0
- package/lib/types/_DiseasePoison.js +110 -0
- package/lib/types/_Enhancements.d.ts +170 -0
- package/lib/types/_Enhancements.js +80 -0
- package/lib/types/_Identifier.d.ts +170 -0
- package/lib/types/_Identifier.js +325 -0
- package/lib/types/_IdentifierGroup.d.ts +413 -0
- package/lib/types/_IdentifierGroup.js +333 -0
- package/lib/types/_ImprovementCost.d.ts +7 -0
- package/lib/types/_ImprovementCost.js +10 -0
- package/lib/types/_MathExpression.d.ts +12 -0
- package/lib/types/_MathExpression.js +36 -0
- package/lib/types/_Prerequisite.d.ts +421 -0
- package/lib/types/_Prerequisite.js +163 -0
- package/lib/types/_ResponsiveText.d.ts +13 -0
- package/lib/types/_ResponsiveText.js +43 -0
- package/lib/types/_Sex.d.ts +5 -0
- package/lib/types/_Sex.js +8 -0
- package/lib/types/_SizeCategory.d.ts +15 -0
- package/lib/types/_SizeCategory.js +24 -0
- package/lib/types/_SkillCheck.d.ts +11 -0
- package/lib/types/_SkillCheck.js +23 -0
- package/lib/types/_Spellwork.d.ts +17 -0
- package/lib/types/_Spellwork.js +39 -0
- package/lib/types/equipment/EquipmentPackage.d.ts +85 -0
- package/lib/types/equipment/EquipmentPackage.js +41 -0
- package/lib/types/equipment/item/Ammunition.d.ts +72 -0
- package/lib/types/equipment/item/Ammunition.js +44 -0
- package/lib/types/equipment/item/Animal.d.ts +72 -0
- package/lib/types/equipment/item/Animal.js +22 -0
- package/lib/types/equipment/item/AnimalCare.d.ts +87 -0
- package/lib/types/equipment/item/AnimalCare.js +58 -0
- package/lib/types/equipment/item/Armor.d.ts +166 -0
- package/lib/types/equipment/item/Armor.js +181 -0
- package/lib/types/equipment/item/BandageOrRemedy.d.ts +201 -0
- package/lib/types/equipment/item/BandageOrRemedy.js +48 -0
- package/lib/types/equipment/item/Book.d.ts +169 -0
- package/lib/types/equipment/item/Book.js +271 -0
- package/lib/types/equipment/item/CeremonialItem.d.ts +202 -0
- package/lib/types/equipment/item/CeremonialItem.js +53 -0
- package/lib/types/equipment/item/Clothes.d.ts +201 -0
- package/lib/types/equipment/item/Clothes.js +48 -0
- package/lib/types/equipment/item/ClothingPackage.d.ts +63 -0
- package/lib/types/equipment/item/ClothingPackage.js +21 -0
- package/lib/types/equipment/item/Container.d.ts +201 -0
- package/lib/types/equipment/item/Container.js +48 -0
- package/lib/types/equipment/item/Elixir.d.ts +119 -0
- package/lib/types/equipment/item/Elixir.js +110 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +215 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +44 -0
- package/lib/types/equipment/item/GemOrPreciousStone.d.ts +74 -0
- package/lib/types/equipment/item/GemOrPreciousStone.js +52 -0
- package/lib/types/equipment/item/IlluminationLightSource.d.ts +210 -0
- package/lib/types/equipment/item/IlluminationLightSource.js +78 -0
- package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +201 -0
- package/lib/types/equipment/item/IlluminationRefillOrSupply.js +48 -0
- package/lib/types/equipment/item/Jewelry.d.ts +74 -0
- package/lib/types/equipment/item/Jewelry.js +46 -0
- package/lib/types/equipment/item/Laboratory.d.ts +81 -0
- package/lib/types/equipment/item/Laboratory.js +34 -0
- package/lib/types/equipment/item/Liebesspielzeug.d.ts +201 -0
- package/lib/types/equipment/item/Liebesspielzeug.js +48 -0
- package/lib/types/equipment/item/LuxuryGood.d.ts +201 -0
- package/lib/types/equipment/item/LuxuryGood.js +48 -0
- package/lib/types/equipment/item/MagicalArtifact.d.ts +204 -0
- package/lib/types/equipment/item/MagicalArtifact.js +82 -0
- package/lib/types/equipment/item/MusicalInstrument.d.ts +201 -0
- package/lib/types/equipment/item/MusicalInstrument.js +48 -0
- package/lib/types/equipment/item/Newspaper.d.ts +67 -0
- package/lib/types/equipment/item/Newspaper.js +36 -0
- package/lib/types/equipment/item/OrienteeringAid.d.ts +200 -0
- package/lib/types/equipment/item/OrienteeringAid.js +2 -0
- package/lib/types/equipment/item/Poison.d.ts +621 -0
- package/lib/types/equipment/item/Poison.js +486 -0
- package/lib/types/equipment/item/RopeOrChain.d.ts +200 -0
- package/lib/types/equipment/item/RopeOrChain.js +2 -0
- package/lib/types/equipment/item/Stationery.d.ts +200 -0
- package/lib/types/equipment/item/Stationery.js +2 -0
- package/lib/types/equipment/item/ThievesTool.d.ts +200 -0
- package/lib/types/equipment/item/ThievesTool.js +2 -0
- package/lib/types/equipment/item/ToolOfTheTrade.d.ts +83 -0
- package/lib/types/equipment/item/ToolOfTheTrade.js +34 -0
- package/lib/types/equipment/item/TravelGearOrTool.d.ts +201 -0
- package/lib/types/equipment/item/TravelGearOrTool.js +48 -0
- package/lib/types/equipment/item/Vehicle.d.ts +80 -0
- package/lib/types/equipment/item/Vehicle.js +30 -0
- package/lib/types/equipment/item/Weapon.d.ts +225 -0
- package/lib/types/equipment/item/Weapon.js +132 -0
- package/lib/types/equipment/item/WeaponAccessory.d.ts +201 -0
- package/lib/types/equipment/item/WeaponAccessory.js +48 -0
- package/lib/types/equipment/item/WorkingSupernaturalCreature.d.ts +72 -0
- package/lib/types/equipment/item/WorkingSupernaturalCreature.js +44 -0
- package/lib/types/equipment/item/_Herbary.d.ts +76 -0
- package/lib/types/equipment/item/_Herbary.js +48 -0
- package/lib/types/equipment/item/_Item.d.ts +414 -0
- package/lib/types/equipment/item/_Item.js +254 -0
- package/lib/types/equipment/item/_MeleeWeapon.d.ts +62 -0
- package/lib/types/equipment/item/_MeleeWeapon.js +100 -0
- package/lib/types/equipment/item/_RangedWeapon.d.ts +38 -0
- package/lib/types/equipment/item/_RangedWeapon.js +93 -0
- package/lib/types/equipment/item/_Weapon.d.ts +25 -0
- package/lib/types/equipment/item/_Weapon.js +77 -0
- package/lib/types/equipment/item/sub/ArmorType.d.ts +7 -0
- package/lib/types/equipment/item/sub/ArmorType.js +25 -0
- package/lib/types/equipment/item/sub/Reach.d.ts +7 -0
- package/lib/types/equipment/item/sub/Reach.js +28 -0
- package/lib/types/index.d.ts +160 -0
- package/lib/types/index.js +160 -0
- package/lib/types/magicalActions/AnimistPower.d.ts +302 -0
- package/lib/types/magicalActions/AnimistPower.js +204 -0
- package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +30 -0
- package/lib/types/magicalActions/AnimistPower_Tribe.js +26 -0
- package/lib/types/magicalActions/Bannzeichen.d.ts +244 -0
- package/lib/types/magicalActions/Bannzeichen.js +231 -0
- package/lib/types/magicalActions/Curse.d.ts +219 -0
- package/lib/types/magicalActions/Curse.js +133 -0
- package/lib/types/magicalActions/DominationRitual.d.ts +204 -0
- package/lib/types/magicalActions/DominationRitual.js +133 -0
- package/lib/types/magicalActions/ElvenMagicalSong.d.ts +126 -0
- package/lib/types/magicalActions/ElvenMagicalSong.js +117 -0
- package/lib/types/magicalActions/GeodeRitual.d.ts +227 -0
- package/lib/types/magicalActions/GeodeRitual.js +142 -0
- package/lib/types/magicalActions/GoblinRitual.d.ts +286 -0
- package/lib/types/magicalActions/GoblinRitual.js +196 -0
- package/lib/types/magicalActions/JesterTrick.d.ts +305 -0
- package/lib/types/magicalActions/JesterTrick.js +160 -0
- package/lib/types/magicalActions/MagicalDance.d.ts +129 -0
- package/lib/types/magicalActions/MagicalDance.js +119 -0
- package/lib/types/magicalActions/MagicalMelody.d.ts +133 -0
- package/lib/types/magicalActions/MagicalMelody.js +123 -0
- package/lib/types/magicalActions/MagicalRune.d.ts +279 -0
- package/lib/types/magicalActions/MagicalRune.js +292 -0
- package/lib/types/magicalActions/ZibiljaRitual.d.ts +420 -0
- package/lib/types/magicalActions/ZibiljaRitual.js +90 -0
- package/lib/types/magicalActions/_MusicTradition.d.ts +17 -0
- package/lib/types/magicalActions/_MusicTradition.js +43 -0
- package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +42 -0
- package/lib/types/prerequisites/ConditionalPrerequisites.js +9 -0
- package/lib/types/prerequisites/DisplayOption.d.ts +13 -0
- package/lib/types/prerequisites/DisplayOption.js +27 -0
- package/lib/types/prerequisites/PrerequisiteGroups.d.ts +2053 -0
- package/lib/types/prerequisites/PrerequisiteGroups.js +180 -0
- package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +133 -0
- package/lib/types/prerequisites/single/ActivatablePrerequisite.js +32 -0
- package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +4 -0
- package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +4 -0
- package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +18 -0
- package/lib/types/prerequisites/single/AnimistPowerPrerequisite.js +24 -0
- package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +16 -0
- package/lib/types/prerequisites/single/CulturePrerequisite.js +16 -0
- package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +4 -0
- package/lib/types/prerequisites/single/EnhancementPrerequisite.js +12 -0
- package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +17 -0
- package/lib/types/prerequisites/single/InfluencePrerequisite.js +19 -0
- package/lib/types/prerequisites/single/PactPrerequisite.d.ts +18 -0
- package/lib/types/prerequisites/single/PactPrerequisite.js +24 -0
- package/lib/types/prerequisites/single/PersonalityTraitPrerequisite.d.ts +17 -0
- package/lib/types/prerequisites/single/PersonalityTraitPrerequisite.js +19 -0
- package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +20 -0
- package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +25 -0
- package/lib/types/prerequisites/single/ProfessionPrerequisite.d.ts +16 -0
- package/lib/types/prerequisites/single/ProfessionPrerequisite.js +16 -0
- package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +16 -0
- package/lib/types/prerequisites/single/PublicationPrerequisite.js +15 -0
- package/lib/types/prerequisites/single/RacePrerequisite.d.ts +17 -0
- package/lib/types/prerequisites/single/RacePrerequisite.js +19 -0
- package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +51 -0
- package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +82 -0
- package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +26 -0
- package/lib/types/prerequisites/single/RatedPrerequisite.js +19 -0
- package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +17 -0
- package/lib/types/prerequisites/single/RatedSumPrerequisite.js +19 -0
- package/lib/types/prerequisites/single/RulePrerequisite.d.ts +19 -0
- package/lib/types/prerequisites/single/RulePrerequisite.js +15 -0
- package/lib/types/prerequisites/single/SexPrerequisite.d.ts +19 -0
- package/lib/types/prerequisites/single/SexPrerequisite.js +15 -0
- package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +7 -0
- package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +17 -0
- package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +16 -0
- package/lib/types/prerequisites/single/SocialStatusPrerequisite.js +16 -0
- package/lib/types/prerequisites/single/StatePrerequisite.d.ts +16 -0
- package/lib/types/prerequisites/single/StatePrerequisite.js +15 -0
- package/lib/types/prerequisites/single/TextPrerequisite.d.ts +19 -0
- package/lib/types/prerequisites/single/TextPrerequisite.js +53 -0
- package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +37 -0
- package/lib/types/prerequisites/single/TraditionPrerequisite.js +42 -0
- package/lib/types/rule/AlternativeRule.d.ts +54 -0
- package/lib/types/rule/AlternativeRule.js +40 -0
- package/lib/types/rule/AlternativeRule_PlayerType.d.ts +6 -0
- package/lib/types/rule/AlternativeRule_PlayerType.js +16 -0
- package/lib/types/rule/CoreRule.d.ts +143 -0
- package/lib/types/rule/CoreRule.js +181 -0
- package/lib/types/rule/FocusRule.d.ts +79 -0
- package/lib/types/rule/FocusRule.js +48 -0
- package/lib/types/rule/FocusRule_Subject.d.ts +6 -0
- package/lib/types/rule/FocusRule_Subject.js +22 -0
- package/lib/types/rule/OptionalRule.d.ts +83 -0
- package/lib/types/rule/OptionalRule.js +59 -0
- package/lib/types/source/Publication.d.ts +50 -0
- package/lib/types/source/Publication.js +64 -0
- package/lib/types/source/_Erratum.d.ts +12 -0
- package/lib/types/source/_Erratum.js +22 -0
- package/lib/types/source/_PublicationRef.d.ts +168 -0
- package/lib/types/source/_PublicationRef.js +164 -0
- package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +1234 -0
- package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +52 -0
- package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +1116 -0
- package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +47 -0
- package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +1116 -0
- package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +47 -0
- package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +1116 -0
- package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +47 -0
- package/lib/types/specialAbility/AncestorGlyph.d.ts +1063 -0
- package/lib/types/specialAbility/AncestorGlyph.js +48 -0
- package/lib/types/specialAbility/BlessedTradition.d.ts +1141 -0
- package/lib/types/specialAbility/BlessedTradition.js +147 -0
- package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +1127 -0
- package/lib/types/specialAbility/BrawlingSpecialAbility.js +46 -0
- package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +1117 -0
- package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +53 -0
- package/lib/types/specialAbility/CombatSpecialAbility.d.ts +1235 -0
- package/lib/types/specialAbility/CombatSpecialAbility.js +52 -0
- package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +1286 -0
- package/lib/types/specialAbility/CombatStyleSpecialAbility.js +54 -0
- package/lib/types/specialAbility/CommandSpecialAbility.d.ts +1127 -0
- package/lib/types/specialAbility/CommandSpecialAbility.js +46 -0
- package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +1062 -0
- package/lib/types/specialAbility/FamiliarSpecialAbility.js +43 -0
- package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +1062 -0
- package/lib/types/specialAbility/FatePointSexSpecialAbility.js +43 -0
- package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +1116 -0
- package/lib/types/specialAbility/FatePointSpecialAbility.js +46 -0
- package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +1117 -0
- package/lib/types/specialAbility/GeneralSpecialAbility.js +47 -0
- package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +1062 -0
- package/lib/types/specialAbility/KarmaSpecialAbility.js +43 -0
- package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +1165 -0
- package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +49 -0
- package/lib/types/specialAbility/LycantropicGift.d.ts +1062 -0
- package/lib/types/specialAbility/LycantropicGift.js +43 -0
- package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +1165 -0
- package/lib/types/specialAbility/MagicStyleSpecialAbility.js +49 -0
- package/lib/types/specialAbility/MagicalSign.d.ts +127 -0
- package/lib/types/specialAbility/MagicalSign.js +66 -0
- package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +1117 -0
- package/lib/types/specialAbility/MagicalSpecialAbility.js +47 -0
- package/lib/types/specialAbility/MagicalTradition.d.ts +1138 -0
- package/lib/types/specialAbility/MagicalTradition.js +115 -0
- package/lib/types/specialAbility/PactGift.d.ts +1143 -0
- package/lib/types/specialAbility/PactGift.js +76 -0
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +1064 -0
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +54 -0
- package/lib/types/specialAbility/Sermon.d.ts +1062 -0
- package/lib/types/specialAbility/Sermon.js +43 -0
- package/lib/types/specialAbility/SexSpecialAbility.d.ts +1116 -0
- package/lib/types/specialAbility/SexSpecialAbility.js +46 -0
- package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +1062 -0
- package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +43 -0
- package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +1111 -0
- package/lib/types/specialAbility/SkillStyleSpecialAbility.js +46 -0
- package/lib/types/specialAbility/VampiricGift.d.ts +1062 -0
- package/lib/types/specialAbility/VampiricGift.js +43 -0
- package/lib/types/specialAbility/Vision.d.ts +1062 -0
- package/lib/types/specialAbility/Vision.js +43 -0
- package/lib/types/specialAbility/_Tradition.d.ts +5 -0
- package/lib/types/specialAbility/_Tradition.js +14 -0
- package/lib/types/specialAbility/sub/Language.d.ts +108 -0
- package/lib/types/specialAbility/sub/Language.js +98 -0
- package/lib/types/specialAbility/sub/Script.d.ts +62 -0
- package/lib/types/specialAbility/sub/Script.js +50 -0
- package/lib/types/specialAbility/sub/TradeSecret.d.ts +972 -0
- package/lib/types/specialAbility/sub/TradeSecret.js +76 -0
- package/lib/types/specialAbility/sub/_LanguageScript.d.ts +5 -0
- package/lib/types/specialAbility/sub/_LanguageScript.js +15 -0
- package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/AttireEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/Beutelzauber.d.ts +1282 -0
- package/lib/types/traditionArtifacts/Beutelzauber.js +50 -0
- package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/BowlEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +1283 -0
- package/lib/types/traditionArtifacts/CauldronEnchantment.js +55 -0
- package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/ChronicleEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/DaggerRitual.d.ts +1294 -0
- package/lib/types/traditionArtifacts/DaggerRitual.js +85 -0
- package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +52 -0
- package/lib/types/traditionArtifacts/Haubenzauber.d.ts +1282 -0
- package/lib/types/traditionArtifacts/Haubenzauber.js +50 -0
- package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/InstrumentEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +1282 -0
- package/lib/types/traditionArtifacts/Krallenkettenzauber.js +50 -0
- package/lib/types/traditionArtifacts/Kristallkugelzauber.d.ts +1282 -0
- package/lib/types/traditionArtifacts/Kristallkugelzauber.js +50 -0
- package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/OrbEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/RingEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/RingEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/SickleRitual.d.ts +1282 -0
- package/lib/types/traditionArtifacts/SickleRitual.js +50 -0
- package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +1286 -0
- package/lib/types/traditionArtifacts/StaffEnchantment.js +55 -0
- package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/ToyEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +1282 -0
- package/lib/types/traditionArtifacts/Trinkhornzauber.js +50 -0
- package/lib/types/traditionArtifacts/WandEnchantment.d.ts +1231 -0
- package/lib/types/traditionArtifacts/WandEnchantment.js +49 -0
- package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +1282 -0
- package/lib/types/traditionArtifacts/WeaponEnchantment.js +50 -0
- package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +8 -0
- package/lib/types/traditionArtifacts/sub/AnimalShape.js +24 -0
- package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +6 -0
- package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +15 -0
- package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +8 -0
- package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +23 -0
- package/lib/types/traditionArtifacts/sub/Brew.d.ts +6 -0
- package/lib/types/traditionArtifacts/sub/Brew.js +15 -0
- package/package.json +61 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
export declare const MetaCondition: DB.Entity<"MetaCondition", {
|
|
3
|
+
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
4
|
+
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
5
|
+
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
6
|
+
initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
|
|
7
|
+
printing: DB.MemberDecl<DB.Integer, false>;
|
|
8
|
+
pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
|
|
9
|
+
first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
10
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
11
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
12
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
13
|
+
}, []>>, true>;
|
|
14
|
+
last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
15
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
16
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
17
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
18
|
+
}, []>>, false>;
|
|
19
|
+
}>, []>>>, true>;
|
|
20
|
+
isRemoved: DB.MemberDecl<DB.Boolean, false>;
|
|
21
|
+
}>, []>>, true>;
|
|
22
|
+
revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
|
|
23
|
+
Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
|
|
24
|
+
printing: DB.MemberDecl<DB.Integer, true>;
|
|
25
|
+
pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
|
|
26
|
+
first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
27
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
28
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
29
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
30
|
+
}, []>>, true>;
|
|
31
|
+
last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
32
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
33
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
34
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
35
|
+
}, []>>, false>;
|
|
36
|
+
}>, []>>>, true>;
|
|
37
|
+
}>, []>>>;
|
|
38
|
+
Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
|
|
39
|
+
printing: DB.MemberDecl<DB.Integer, true>;
|
|
40
|
+
}>, []>>>;
|
|
41
|
+
}, []>>>, false>;
|
|
42
|
+
}>, true>;
|
|
43
|
+
}>, []>>>, []>>, true>;
|
|
44
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"MetaConditionTranslation", {
|
|
45
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
46
|
+
rules: DB.MemberDecl<DB.String, false>;
|
|
47
|
+
effects: DB.MemberDecl<DB.Array<DB.String>, true>;
|
|
48
|
+
errata: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Errata", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"Erratum", DB.Object<{
|
|
49
|
+
date: DB.MemberDecl<DB.Date, true>;
|
|
50
|
+
description: DB.MemberDecl<DB.String, true>;
|
|
51
|
+
}>, []>>>, []>>, false>;
|
|
52
|
+
}>, true>;
|
|
53
|
+
}, undefined>;
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { NestedTranslationMap } from "./Locale.js";
|
|
3
|
+
import { Errata } from "./source/_Erratum.js";
|
|
4
|
+
import { src } from "./source/_PublicationRef.js";
|
|
5
|
+
export const MetaCondition = DB.Entity(import.meta.url, {
|
|
6
|
+
name: "MetaCondition",
|
|
7
|
+
namePlural: "MetaConditions",
|
|
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
|
+
type: () => DB.Object({
|
|
10
|
+
src,
|
|
11
|
+
translations: NestedTranslationMap(DB.Required, "MetaCondition", DB.Object({
|
|
12
|
+
name: DB.Required({
|
|
13
|
+
comment: "The meta condition’s name.",
|
|
14
|
+
type: DB.String({ minLength: 1 }),
|
|
15
|
+
}),
|
|
16
|
+
rules: DB.Optional({
|
|
17
|
+
comment: "Additional rules for the meta condition, if applicable.",
|
|
18
|
+
type: DB.String({ minLength: 1, markdown: "block" }),
|
|
19
|
+
}),
|
|
20
|
+
effects: DB.Required({
|
|
21
|
+
comment: "The effects for level 1 to 4.",
|
|
22
|
+
type: DB.Array(DB.String({ minLength: 1, markdown: "block" }), {
|
|
23
|
+
minItems: 4,
|
|
24
|
+
maxItems: 4,
|
|
25
|
+
}),
|
|
26
|
+
}),
|
|
27
|
+
errata: DB.Optional({
|
|
28
|
+
type: DB.IncludeIdentifier(Errata),
|
|
29
|
+
}),
|
|
30
|
+
})),
|
|
31
|
+
}),
|
|
32
|
+
instanceDisplayName: {},
|
|
33
|
+
uniqueConstraints: [
|
|
34
|
+
{
|
|
35
|
+
entityMapKeyPath: "translations",
|
|
36
|
+
keyPathInEntityMap: "name",
|
|
37
|
+
},
|
|
38
|
+
],
|
|
39
|
+
});
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
export declare const PactCategory: DB.Entity<"PactCategory", {
|
|
3
|
+
types: DB.MemberDecl<DB.ChildEntities<DB.Entity<"PactType", {
|
|
4
|
+
parent: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
5
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PactTypeTranslation", {
|
|
6
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
7
|
+
}>, true>;
|
|
8
|
+
}, "parent">>, true>;
|
|
9
|
+
domains: DB.MemberDecl<DB.ChildEntities<DB.Entity<"PactDomain", {
|
|
10
|
+
parent: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
11
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PactDomainTranslation", {
|
|
12
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
13
|
+
}>, true>;
|
|
14
|
+
}, "parent">>, true>;
|
|
15
|
+
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
16
|
+
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
17
|
+
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
18
|
+
initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
|
|
19
|
+
printing: DB.MemberDecl<DB.Integer, false>;
|
|
20
|
+
pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
|
|
21
|
+
first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
22
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
23
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
24
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
25
|
+
}, []>>, true>;
|
|
26
|
+
last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
27
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
28
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
29
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
30
|
+
}, []>>, false>;
|
|
31
|
+
}>, []>>>, true>;
|
|
32
|
+
isRemoved: DB.MemberDecl<DB.Boolean, false>;
|
|
33
|
+
}>, []>>, true>;
|
|
34
|
+
revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
|
|
35
|
+
Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
|
|
36
|
+
printing: DB.MemberDecl<DB.Integer, true>;
|
|
37
|
+
pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
|
|
38
|
+
first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
39
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
40
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
41
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
42
|
+
}, []>>, true>;
|
|
43
|
+
last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
44
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
45
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
46
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
47
|
+
}, []>>, false>;
|
|
48
|
+
}>, []>>>, true>;
|
|
49
|
+
}>, []>>>;
|
|
50
|
+
Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
|
|
51
|
+
printing: DB.MemberDecl<DB.Integer, true>;
|
|
52
|
+
}>, []>>>;
|
|
53
|
+
}, []>>>, false>;
|
|
54
|
+
}>, true>;
|
|
55
|
+
}>, []>>>, []>>, true>;
|
|
56
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PactCategoryTranslation", {
|
|
57
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
58
|
+
errata: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Errata", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"Erratum", DB.Object<{
|
|
59
|
+
date: DB.MemberDecl<DB.Date, true>;
|
|
60
|
+
description: DB.MemberDecl<DB.String, true>;
|
|
61
|
+
}>, []>>>, []>>, false>;
|
|
62
|
+
}>, true>;
|
|
63
|
+
}, undefined>;
|
|
64
|
+
export declare const PactType: DB.Entity<"PactType", {
|
|
65
|
+
parent: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
66
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PactTypeTranslation", {
|
|
67
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
68
|
+
}>, true>;
|
|
69
|
+
}, "parent">;
|
|
70
|
+
export declare const PactDomain: DB.Entity<"PactDomain", {
|
|
71
|
+
parent: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
72
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PactDomainTranslation", {
|
|
73
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
74
|
+
}>, true>;
|
|
75
|
+
}, "parent">;
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { PactCategoryIdentifier } from "./_Identifier.js";
|
|
3
|
+
import { NestedTranslationMap } from "./Locale.js";
|
|
4
|
+
import { Errata } from "./source/_Erratum.js";
|
|
5
|
+
import { src } from "./source/_PublicationRef.js";
|
|
6
|
+
export const PactCategory = DB.Entity(import.meta.url, {
|
|
7
|
+
name: "PactCategory",
|
|
8
|
+
namePlural: "PactCategories",
|
|
9
|
+
type: () => DB.Object({
|
|
10
|
+
types: DB.Required({
|
|
11
|
+
comment: "Types of creatures in this category.",
|
|
12
|
+
type: DB.ChildEntities(PactType),
|
|
13
|
+
}),
|
|
14
|
+
domains: DB.Required({
|
|
15
|
+
comment: "Domains in this category.",
|
|
16
|
+
type: DB.ChildEntities(PactDomain),
|
|
17
|
+
}),
|
|
18
|
+
src,
|
|
19
|
+
translations: NestedTranslationMap(DB.Required, "PactCategory", DB.Object({
|
|
20
|
+
name: DB.Required({
|
|
21
|
+
comment: "The pact category’s name.",
|
|
22
|
+
type: DB.String({ minLength: 1 }),
|
|
23
|
+
}),
|
|
24
|
+
errata: DB.Optional({
|
|
25
|
+
type: DB.IncludeIdentifier(Errata),
|
|
26
|
+
}),
|
|
27
|
+
})),
|
|
28
|
+
}),
|
|
29
|
+
instanceDisplayName: {},
|
|
30
|
+
uniqueConstraints: [
|
|
31
|
+
{
|
|
32
|
+
entityMapKeyPath: "translations",
|
|
33
|
+
keyPathInEntityMap: "name",
|
|
34
|
+
},
|
|
35
|
+
],
|
|
36
|
+
});
|
|
37
|
+
export const PactType = DB.Entity(import.meta.url, {
|
|
38
|
+
name: "PactType",
|
|
39
|
+
namePlural: "PactTypes",
|
|
40
|
+
type: () => DB.Object({
|
|
41
|
+
parent: DB.Required({
|
|
42
|
+
comment: "The pact category this type belongs to.",
|
|
43
|
+
type: PactCategoryIdentifier(),
|
|
44
|
+
}),
|
|
45
|
+
translations: NestedTranslationMap(DB.Required, "PactType", DB.Object({
|
|
46
|
+
name: DB.Required({
|
|
47
|
+
comment: "The type’s name.",
|
|
48
|
+
type: DB.String({ minLength: 1 }),
|
|
49
|
+
}),
|
|
50
|
+
})),
|
|
51
|
+
}),
|
|
52
|
+
parentReferenceKey: "parent",
|
|
53
|
+
instanceDisplayName: {},
|
|
54
|
+
instanceDisplayNameCustomizer: ({ instance, instanceDisplayName, instanceDisplayNameLocaleId, getDisplayNameForInstanceId, }) => ({
|
|
55
|
+
name: `${getDisplayNameForInstanceId("PactCategory", instance.parent)?.name ?? ""} — ${instanceDisplayName}`,
|
|
56
|
+
localeId: instanceDisplayNameLocaleId,
|
|
57
|
+
}),
|
|
58
|
+
uniqueConstraints: [
|
|
59
|
+
[
|
|
60
|
+
{
|
|
61
|
+
keyPath: "parent",
|
|
62
|
+
},
|
|
63
|
+
{
|
|
64
|
+
entityMapKeyPath: "translations",
|
|
65
|
+
keyPathInEntityMap: "name",
|
|
66
|
+
},
|
|
67
|
+
],
|
|
68
|
+
],
|
|
69
|
+
});
|
|
70
|
+
export const PactDomain = DB.Entity(import.meta.url, {
|
|
71
|
+
name: "PactDomain",
|
|
72
|
+
namePlural: "PactDomains",
|
|
73
|
+
type: () => DB.Object({
|
|
74
|
+
parent: DB.Required({
|
|
75
|
+
comment: "The pact category this domain belongs to.",
|
|
76
|
+
type: PactCategoryIdentifier(),
|
|
77
|
+
}),
|
|
78
|
+
translations: NestedTranslationMap(DB.Required, "PactDomain", DB.Object({
|
|
79
|
+
name: DB.Required({
|
|
80
|
+
comment: "The domain’s name.",
|
|
81
|
+
type: DB.String({ minLength: 1 }),
|
|
82
|
+
}),
|
|
83
|
+
})),
|
|
84
|
+
}),
|
|
85
|
+
parentReferenceKey: "parent",
|
|
86
|
+
instanceDisplayName: {},
|
|
87
|
+
instanceDisplayNameCustomizer: ({ instance, instanceDisplayName, instanceDisplayNameLocaleId, getDisplayNameForInstanceId, }) => ({
|
|
88
|
+
name: `${getDisplayNameForInstanceId("PactCategory", instance.parent)?.name ?? ""} — ${instanceDisplayName}`,
|
|
89
|
+
localeId: instanceDisplayNameLocaleId,
|
|
90
|
+
}),
|
|
91
|
+
uniqueConstraints: [
|
|
92
|
+
[
|
|
93
|
+
{
|
|
94
|
+
keyPath: "parent",
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
entityMapKeyPath: "translations",
|
|
98
|
+
keyPathInEntityMap: "name",
|
|
99
|
+
},
|
|
100
|
+
],
|
|
101
|
+
],
|
|
102
|
+
});
|
|
@@ -0,0 +1,101 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
export declare const Patron: DB.Entity<"Patron", {
|
|
3
|
+
category: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
4
|
+
skills: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
|
|
5
|
+
culture: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PatronCulture", DB.Object<{
|
|
6
|
+
set: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
|
|
7
|
+
operation: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"PatronCultureOperation", {
|
|
8
|
+
Intersection: DB.EnumCase<null>;
|
|
9
|
+
Difference: DB.EnumCase<null>;
|
|
10
|
+
}, []>>, false>;
|
|
11
|
+
}>, []>>, true>;
|
|
12
|
+
powers: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AnimalPowers", DB.Object<{
|
|
13
|
+
level1: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AnimalPowersLevel1", DB.Array<DB.IncludeIdentifier<[], DB.Enum<"AnimalPowerLevel1", {
|
|
14
|
+
Advantage: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AdvantageAnimalPower", DB.Object<{
|
|
15
|
+
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
16
|
+
level: DB.MemberDecl<DB.Integer, false>;
|
|
17
|
+
option: DB.MemberDecl<DB.Integer, false>;
|
|
18
|
+
}>, []>>>;
|
|
19
|
+
Skill: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"SkillAnimalPower", DB.Object<{
|
|
20
|
+
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
21
|
+
points: DB.MemberDecl<DB.Integer, true>;
|
|
22
|
+
}>, []>>>;
|
|
23
|
+
}, []>>>, []>>, true>;
|
|
24
|
+
level2: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AnimalPowersLevel2", DB.Array<DB.IncludeIdentifier<[], DB.Enum<"AnimalPowerLevel2", {
|
|
25
|
+
Combat: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"CombatAnimalPower", DB.Object<{
|
|
26
|
+
id: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"CombatAnimalPowerType", {
|
|
27
|
+
Attack: DB.EnumCase<null>;
|
|
28
|
+
Parry: DB.EnumCase<null>;
|
|
29
|
+
RangedCombat: DB.EnumCase<null>;
|
|
30
|
+
Dodge: DB.EnumCase<null>;
|
|
31
|
+
DamagePoints: DB.EnumCase<null>;
|
|
32
|
+
Protection: DB.EnumCase<null>;
|
|
33
|
+
}, []>>, true>;
|
|
34
|
+
value: DB.MemberDecl<DB.Integer, false>;
|
|
35
|
+
}>, []>>>;
|
|
36
|
+
}, []>>>, []>>, true>;
|
|
37
|
+
level3: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AnimalPowersLevel3", DB.Array<DB.IncludeIdentifier<[], DB.Enum<"AnimalPowerLevel3", {
|
|
38
|
+
Attribute: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"AttributeAnimalPower", DB.Object<{
|
|
39
|
+
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
40
|
+
value: DB.MemberDecl<DB.Integer, true>;
|
|
41
|
+
}>, []>>>;
|
|
42
|
+
}, []>>>, []>>, true>;
|
|
43
|
+
}>, []>>, false>;
|
|
44
|
+
ae_cost: DB.MemberDecl<DB.Integer, false>;
|
|
45
|
+
improvement_cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ImprovementCost", {
|
|
46
|
+
A: DB.EnumCase<null>;
|
|
47
|
+
B: DB.EnumCase<null>;
|
|
48
|
+
C: DB.EnumCase<null>;
|
|
49
|
+
D: DB.EnumCase<null>;
|
|
50
|
+
}, []>>, false>;
|
|
51
|
+
common_advantages: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
|
|
52
|
+
common_disadvantages: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, false>;
|
|
53
|
+
common_spellworks: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"SpellworkIdentifier", {
|
|
54
|
+
Spell: DB.EnumCase<DB.ReferenceIdentifier>;
|
|
55
|
+
Ritual: DB.EnumCase<DB.ReferenceIdentifier>;
|
|
56
|
+
}, []>>>, false>;
|
|
57
|
+
src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
|
|
58
|
+
id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
|
|
59
|
+
occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
|
|
60
|
+
initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
|
|
61
|
+
printing: DB.MemberDecl<DB.Integer, false>;
|
|
62
|
+
pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
|
|
63
|
+
first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
64
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
65
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
66
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
67
|
+
}, []>>, true>;
|
|
68
|
+
last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
69
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
70
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
71
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
72
|
+
}, []>>, false>;
|
|
73
|
+
}>, []>>>, true>;
|
|
74
|
+
isRemoved: DB.MemberDecl<DB.Boolean, false>;
|
|
75
|
+
}>, []>>, true>;
|
|
76
|
+
revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
|
|
77
|
+
Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
|
|
78
|
+
printing: DB.MemberDecl<DB.Integer, true>;
|
|
79
|
+
pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
|
|
80
|
+
first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
81
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
82
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
83
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
84
|
+
}, []>>, true>;
|
|
85
|
+
last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
|
|
86
|
+
InsideCoverFront: DB.EnumCase<null>;
|
|
87
|
+
InsideCoverBack: DB.EnumCase<null>;
|
|
88
|
+
Numbered: DB.EnumCase<DB.Integer>;
|
|
89
|
+
}, []>>, false>;
|
|
90
|
+
}>, []>>>, true>;
|
|
91
|
+
}>, []>>>;
|
|
92
|
+
Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
|
|
93
|
+
printing: DB.MemberDecl<DB.Integer, true>;
|
|
94
|
+
}>, []>>>;
|
|
95
|
+
}, []>>>, false>;
|
|
96
|
+
}>, true>;
|
|
97
|
+
}>, []>>>, []>>, true>;
|
|
98
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PatronTranslation", {
|
|
99
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
100
|
+
}>, true>;
|
|
101
|
+
}, undefined>;
|
|
@@ -0,0 +1,203 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { AdvantageIdentifier, AttributeIdentifier, DisadvantageIdentifier, PatronCategoryIdentifier, SkillIdentifier, TribeIdentifier, } from "./_Identifier.js";
|
|
3
|
+
import { SpellworkIdentifier } from "./_IdentifierGroup.js";
|
|
4
|
+
import { ImprovementCost } from "./_ImprovementCost.js";
|
|
5
|
+
import { NestedTranslationMap } from "./Locale.js";
|
|
6
|
+
import { src } from "./source/_PublicationRef.js";
|
|
7
|
+
export const Patron = DB.Entity(import.meta.url, {
|
|
8
|
+
name: "Patron",
|
|
9
|
+
namePlural: "Patrons",
|
|
10
|
+
type: () => DB.Object({
|
|
11
|
+
category: DB.Required({
|
|
12
|
+
comment: "The patron’s category.",
|
|
13
|
+
type: PatronCategoryIdentifier(),
|
|
14
|
+
}),
|
|
15
|
+
skills: DB.Required({
|
|
16
|
+
comment: "The patron-specific skills.",
|
|
17
|
+
type: DB.Array(SkillIdentifier(), { minItems: 3, maxItems: 3 }),
|
|
18
|
+
}),
|
|
19
|
+
culture: DB.Required({
|
|
20
|
+
comment: "The patron is only available to a certain set of cultures. It may be available to all, it may be available to only specific ones (intersection) and it may be available to all except specific ones to the listed cultures (difference).",
|
|
21
|
+
type: DB.IncludeIdentifier(PatronCulture),
|
|
22
|
+
}),
|
|
23
|
+
powers: DB.Optional({
|
|
24
|
+
comment: "The patron-specific powers. Used by animist power Animal Powers I–III and should only be present on animal patrons.",
|
|
25
|
+
type: DB.IncludeIdentifier(AnimalPowers),
|
|
26
|
+
}),
|
|
27
|
+
ae_cost: DB.Optional({
|
|
28
|
+
comment: "The patron-specific AE cost. Used by several animist forces for animal patrons.",
|
|
29
|
+
type: DB.Integer({ minimum: 2, multipleOf: 2 }),
|
|
30
|
+
}),
|
|
31
|
+
improvement_cost: DB.Optional({
|
|
32
|
+
comment: "The patron-specific improvement cost. Used by several animist forces for animal patrons.",
|
|
33
|
+
type: DB.IncludeIdentifier(ImprovementCost),
|
|
34
|
+
}),
|
|
35
|
+
common_advantages: DB.Optional({
|
|
36
|
+
comment: `The patron may grant common advantages that are taken into account during character creation.
|
|
37
|
+
|
|
38
|
+
*Source:* Geisterwald & Knochenklippen, p. 6-7`,
|
|
39
|
+
type: DB.Array(AdvantageIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
40
|
+
}),
|
|
41
|
+
common_disadvantages: DB.Optional({
|
|
42
|
+
comment: `The patron may grant common disadvantages that are taken into account during character creation.
|
|
43
|
+
|
|
44
|
+
*Source:* Geisterwald & Knochenklippen, p. 6-7`,
|
|
45
|
+
type: DB.Array(DisadvantageIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
46
|
+
}),
|
|
47
|
+
common_spellworks: DB.Optional({
|
|
48
|
+
comment: `The animist may learn spellworks common for this patron.
|
|
49
|
+
|
|
50
|
+
*Source:* Geisterwald & Knochenklippen, p. 6-7`,
|
|
51
|
+
type: DB.Array(DB.IncludeIdentifier(SpellworkIdentifier), {
|
|
52
|
+
minItems: 1,
|
|
53
|
+
uniqueItems: true,
|
|
54
|
+
}),
|
|
55
|
+
}),
|
|
56
|
+
src,
|
|
57
|
+
translations: NestedTranslationMap(DB.Required, "Patron", DB.Object({
|
|
58
|
+
name: DB.Required({
|
|
59
|
+
comment: "The patron’s name.",
|
|
60
|
+
type: DB.String({ minLength: 1 }),
|
|
61
|
+
}),
|
|
62
|
+
})),
|
|
63
|
+
}),
|
|
64
|
+
instanceDisplayName: {},
|
|
65
|
+
uniqueConstraints: [
|
|
66
|
+
{
|
|
67
|
+
entityMapKeyPath: "translations",
|
|
68
|
+
keyPathInEntityMap: "name",
|
|
69
|
+
},
|
|
70
|
+
],
|
|
71
|
+
});
|
|
72
|
+
const PatronCulture = DB.TypeAlias(import.meta.url, {
|
|
73
|
+
name: "PatronCulture",
|
|
74
|
+
comment: "The patron cultures the patron is or is not part of. If the patron is part of all patron cultures, the set should be empty and the operation should be difference.",
|
|
75
|
+
type: () => DB.Object({
|
|
76
|
+
set: DB.Required({
|
|
77
|
+
type: DB.Array(TribeIdentifier(), { uniqueItems: true }),
|
|
78
|
+
}),
|
|
79
|
+
operation: DB.Optional({
|
|
80
|
+
type: DB.IncludeIdentifier(PatronCultureOperation),
|
|
81
|
+
}),
|
|
82
|
+
}),
|
|
83
|
+
});
|
|
84
|
+
const PatronCultureOperation = DB.Enum(import.meta.url, {
|
|
85
|
+
name: "PatronCultureOperation",
|
|
86
|
+
comment: "The set operation to combine the set of all patron cultures with the specified set of patron cultures: If they should intersect, the patron is only part of the given cultures. If they should differ, the patron is only part of the cultures that are not given.",
|
|
87
|
+
values: () => ({
|
|
88
|
+
Intersection: DB.EnumCase({ type: null }),
|
|
89
|
+
Difference: DB.EnumCase({ type: null }),
|
|
90
|
+
}),
|
|
91
|
+
});
|
|
92
|
+
const AnimalPowers = DB.TypeAlias(import.meta.url, {
|
|
93
|
+
name: "AnimalPowers",
|
|
94
|
+
type: () => DB.Object({
|
|
95
|
+
level1: DB.Required({
|
|
96
|
+
type: DB.IncludeIdentifier(AnimalPowersLevel1),
|
|
97
|
+
}),
|
|
98
|
+
level2: DB.Required({
|
|
99
|
+
type: DB.IncludeIdentifier(AnimalPowersLevel2),
|
|
100
|
+
}),
|
|
101
|
+
level3: DB.Required({
|
|
102
|
+
type: DB.IncludeIdentifier(AnimalPowersLevel3),
|
|
103
|
+
}),
|
|
104
|
+
}),
|
|
105
|
+
});
|
|
106
|
+
const AdvantageAnimalPower = DB.TypeAlias(import.meta.url, {
|
|
107
|
+
name: "AdvantageAnimalPower",
|
|
108
|
+
type: () => DB.Object({
|
|
109
|
+
id: DB.Required({
|
|
110
|
+
comment: "The advantage’s identifier.",
|
|
111
|
+
type: AdvantageIdentifier(),
|
|
112
|
+
}),
|
|
113
|
+
level: DB.Optional({
|
|
114
|
+
comment: "It grants a higher level of the advantage.",
|
|
115
|
+
type: DB.Integer({ minimum: 2 }),
|
|
116
|
+
}),
|
|
117
|
+
option: DB.Optional({
|
|
118
|
+
comment: "It grants a specific general option of the advantage.",
|
|
119
|
+
type: DB.Integer({ minimum: 1 }),
|
|
120
|
+
}),
|
|
121
|
+
}),
|
|
122
|
+
});
|
|
123
|
+
const SkillAnimalPower = DB.TypeAlias(import.meta.url, {
|
|
124
|
+
name: "SkillAnimalPower",
|
|
125
|
+
type: () => DB.Object({
|
|
126
|
+
id: DB.Required({
|
|
127
|
+
comment: "The skill’s identifier.",
|
|
128
|
+
type: SkillIdentifier(),
|
|
129
|
+
}),
|
|
130
|
+
points: DB.Required({
|
|
131
|
+
comment: "The points that gets added to the skill’s rating.",
|
|
132
|
+
type: DB.Integer({ minimum: 1 }),
|
|
133
|
+
}),
|
|
134
|
+
}),
|
|
135
|
+
});
|
|
136
|
+
const AnimalPowerLevel1 = DB.Enum(import.meta.url, {
|
|
137
|
+
name: "AnimalPowerLevel1",
|
|
138
|
+
values: () => ({
|
|
139
|
+
Advantage: DB.EnumCase({ type: DB.IncludeIdentifier(AdvantageAnimalPower) }),
|
|
140
|
+
Skill: DB.EnumCase({ type: DB.IncludeIdentifier(SkillAnimalPower) }),
|
|
141
|
+
}),
|
|
142
|
+
});
|
|
143
|
+
const AnimalPowersLevel1 = DB.TypeAlias(import.meta.url, {
|
|
144
|
+
name: "AnimalPowersLevel1",
|
|
145
|
+
type: () => DB.Array(DB.IncludeIdentifier(AnimalPowerLevel1), { minItems: 1, uniqueItems: true }),
|
|
146
|
+
});
|
|
147
|
+
const CombatAnimalPower = DB.TypeAlias(import.meta.url, {
|
|
148
|
+
name: "CombatAnimalPower",
|
|
149
|
+
type: () => DB.Object({
|
|
150
|
+
id: DB.Required({
|
|
151
|
+
comment: "The combat value.",
|
|
152
|
+
type: DB.IncludeIdentifier(CombatAnimalPowerType),
|
|
153
|
+
}),
|
|
154
|
+
value: DB.Optional({
|
|
155
|
+
comment: "The value that gets added to the combat value.",
|
|
156
|
+
type: DB.Integer({ minimum: 1 }),
|
|
157
|
+
}),
|
|
158
|
+
}),
|
|
159
|
+
});
|
|
160
|
+
const CombatAnimalPowerType = DB.Enum(import.meta.url, {
|
|
161
|
+
name: "CombatAnimalPowerType",
|
|
162
|
+
values: () => ({
|
|
163
|
+
Attack: DB.EnumCase({ type: null }),
|
|
164
|
+
Parry: DB.EnumCase({ type: null }),
|
|
165
|
+
RangedCombat: DB.EnumCase({ type: null }),
|
|
166
|
+
Dodge: DB.EnumCase({ type: null }),
|
|
167
|
+
DamagePoints: DB.EnumCase({ type: null }),
|
|
168
|
+
Protection: DB.EnumCase({ type: null }),
|
|
169
|
+
}),
|
|
170
|
+
});
|
|
171
|
+
const AnimalPowerLevel2 = DB.Enum(import.meta.url, {
|
|
172
|
+
name: "AnimalPowerLevel2",
|
|
173
|
+
values: () => ({
|
|
174
|
+
Combat: DB.EnumCase({ type: DB.IncludeIdentifier(CombatAnimalPower) }),
|
|
175
|
+
}),
|
|
176
|
+
});
|
|
177
|
+
const AnimalPowersLevel2 = DB.TypeAlias(import.meta.url, {
|
|
178
|
+
name: "AnimalPowersLevel2",
|
|
179
|
+
type: () => DB.Array(DB.IncludeIdentifier(AnimalPowerLevel2), { minItems: 1, uniqueItems: true }),
|
|
180
|
+
});
|
|
181
|
+
const AttributeAnimalPower = DB.TypeAlias(import.meta.url, {
|
|
182
|
+
name: "AttributeAnimalPower",
|
|
183
|
+
type: () => DB.Object({
|
|
184
|
+
id: DB.Required({
|
|
185
|
+
comment: "The attribute’s identifier.",
|
|
186
|
+
type: AttributeIdentifier(),
|
|
187
|
+
}),
|
|
188
|
+
value: DB.Required({
|
|
189
|
+
comment: "The value that gets added to the attribute.",
|
|
190
|
+
type: DB.Integer({ minimum: 1 }),
|
|
191
|
+
}),
|
|
192
|
+
}),
|
|
193
|
+
});
|
|
194
|
+
const AnimalPowerLevel3 = DB.Enum(import.meta.url, {
|
|
195
|
+
name: "AnimalPowerLevel3",
|
|
196
|
+
values: () => ({
|
|
197
|
+
Attribute: DB.EnumCase({ type: DB.IncludeIdentifier(AttributeAnimalPower) }),
|
|
198
|
+
}),
|
|
199
|
+
});
|
|
200
|
+
const AnimalPowersLevel3 = DB.TypeAlias(import.meta.url, {
|
|
201
|
+
name: "AnimalPowersLevel3",
|
|
202
|
+
type: () => DB.Array(DB.IncludeIdentifier(AnimalPowerLevel3), { minItems: 1, uniqueItems: true }),
|
|
203
|
+
});
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
export declare const PatronCategory: DB.Entity<"PatronCategory", {
|
|
3
|
+
primary_patron_cultures: DB.MemberDecl<DB.Array<DB.ReferenceIdentifier>, true>;
|
|
4
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"PatronCategoryTranslation", {
|
|
5
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
6
|
+
}>, true>;
|
|
7
|
+
}, undefined>;
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
import { NestedTranslationMap } from "./Locale.js";
|
|
3
|
+
import { CultureIdentifier } from "./_Identifier.js";
|
|
4
|
+
export const PatronCategory = DB.Entity(import.meta.url, {
|
|
5
|
+
name: "PatronCategory",
|
|
6
|
+
namePlural: "PatronCategories",
|
|
7
|
+
type: () => DB.Object({
|
|
8
|
+
primary_patron_cultures: DB.Required({
|
|
9
|
+
comment: "The list of cultures where patrons from this category can be the primary patron of.",
|
|
10
|
+
type: DB.Array(CultureIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
11
|
+
}),
|
|
12
|
+
translations: NestedTranslationMap(DB.Required, "PatronCategory", DB.Object({
|
|
13
|
+
name: DB.Required({
|
|
14
|
+
comment: "The patron category’s name.",
|
|
15
|
+
type: DB.String({ minLength: 1 }),
|
|
16
|
+
}),
|
|
17
|
+
})),
|
|
18
|
+
}),
|
|
19
|
+
instanceDisplayName: {},
|
|
20
|
+
uniqueConstraints: [
|
|
21
|
+
{
|
|
22
|
+
entityMapKeyPath: "translations",
|
|
23
|
+
keyPathInEntityMap: "name",
|
|
24
|
+
},
|
|
25
|
+
],
|
|
26
|
+
});
|