optolith-database-schema 0.17.2 → 0.18.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -1
- package/lib/main.d.ts +2 -101
- package/lib/main.js +361 -106
- package/lib/test.d.ts +1 -0
- package/lib/test.js +2 -0
- package/lib/types/Advantage.d.ts +921 -63
- package/lib/types/Advantage.js +42 -13
- package/lib/types/AnimalDisease.d.ts +90 -59
- package/lib/types/AnimalDisease.js +28 -13
- package/lib/types/AnimalType.d.ts +6 -28
- package/lib/types/AnimalType.js +14 -13
- package/lib/types/ArcaneBardTradition.d.ts +30 -10
- package/lib/types/ArcaneBardTradition.js +7 -13
- package/lib/types/ArcaneDancerTradition.d.ts +30 -10
- package/lib/types/ArcaneDancerTradition.js +7 -13
- package/lib/types/Aspect.d.ts +7 -33
- package/lib/types/Aspect.js +20 -13
- package/lib/types/Attribute.d.ts +8 -36
- package/lib/types/Attribute.js +23 -13
- package/lib/types/Blessing.d.ts +96 -113
- package/lib/types/Blessing.js +94 -13
- package/lib/types/Cantrip.d.ts +132 -183
- package/lib/types/Cantrip.js +159 -13
- package/lib/types/Ceremony.d.ts +630 -113
- package/lib/types/Ceremony.js +87 -13
- package/lib/types/CombatTechnique.d.ts +127 -0
- package/lib/types/CombatTechnique.js +101 -0
- package/lib/types/Condition.d.ts +52 -40
- package/lib/types/Condition.js +31 -13
- package/lib/types/Continent.d.ts +6 -30
- package/lib/types/Continent.js +15 -13
- package/lib/types/Culture.d.ts +142 -369
- package/lib/types/Culture.js +355 -13
- package/lib/types/DerivedCharacteristic.d.ts +76 -61
- package/lib/types/DerivedCharacteristic.js +45 -13
- package/lib/types/Disadvantage.d.ts +921 -58
- package/lib/types/Disadvantage.js +45 -13
- package/lib/types/Disease.d.ts +81 -43
- package/lib/types/Disease.js +15 -13
- package/lib/types/Element.d.ts +6 -28
- package/lib/types/Element.js +14 -13
- package/lib/types/ExperienceLevel.d.ts +13 -64
- package/lib/types/ExperienceLevel.js +43 -13
- package/lib/types/EyeColor.d.ts +6 -28
- package/lib/types/EyeColor.js +14 -13
- package/lib/types/FamiliarsTrick.d.ts +189 -266
- package/lib/types/FamiliarsTrick.js +193 -13
- package/lib/types/HairColor.d.ts +6 -28
- package/lib/types/HairColor.js +14 -13
- package/lib/types/Lessons.d.ts +180 -0
- package/lib/types/Lessons.js +212 -0
- package/lib/types/LiturgicalChant.d.ts +630 -113
- package/lib/types/LiturgicalChant.js +87 -13
- package/lib/types/Locale.d.ts +11 -36
- package/lib/types/Locale.js +1316 -13
- package/lib/types/MetaCondition.d.ts +52 -43
- package/lib/types/MetaCondition.js +32 -13
- package/lib/types/PactCategory.d.ts +74 -78
- package/lib/types/PactCategory.js +65 -13
- package/lib/types/Patron.d.ts +100 -197
- package/lib/types/Patron.js +195 -13
- package/lib/types/PatronCategory.d.ts +7 -36
- package/lib/types/PatronCategory.js +19 -13
- package/lib/types/PersonalityTrait.d.ts +80 -67
- package/lib/types/PersonalityTrait.js +51 -13
- package/lib/types/Profession.d.ts +1911 -665
- package/lib/types/Profession.js +593 -13
- package/lib/types/Property.d.ts +7 -34
- package/lib/types/Property.js +19 -13
- package/lib/types/Race.d.ts +163 -349
- package/lib/types/Race.js +287 -13
- package/lib/types/Region.d.ts +6 -28
- package/lib/types/Region.js +14 -13
- package/lib/types/Ritual.d.ts +627 -111
- package/lib/types/Ritual.js +88 -13
- package/lib/types/Service.d.ts +55 -43
- package/lib/types/Service.js +38 -13
- package/lib/types/SexPractice.d.ts +50 -47
- package/lib/types/SexPractice.js +32 -13
- package/lib/types/Skill.d.ts +112 -131
- package/lib/types/Skill.js +120 -10
- package/lib/types/SkillGroup.d.ts +8 -37
- package/lib/types/SkillGroup.js +23 -13
- package/lib/types/SkillModificationLevel.d.ts +31 -101
- package/lib/types/SkillModificationLevel.js +95 -10
- package/lib/types/SocialStatus.d.ts +7 -28
- package/lib/types/SocialStatus.js +18 -13
- package/lib/types/Spell.d.ts +627 -111
- package/lib/types/Spell.js +88 -13
- package/lib/types/State.d.ts +51 -36
- package/lib/types/State.js +24 -13
- package/lib/types/Talisman.d.ts +64 -70
- package/lib/types/Talisman.js +64 -13
- package/lib/types/TargetCategory.d.ts +7 -42
- package/lib/types/TargetCategory.js +19 -13
- package/lib/types/_Activatable.d.ts +1587 -1366
- package/lib/types/_Activatable.js +1392 -2
- package/lib/types/_ActivatableSelectOptionCategory.d.ts +657 -386
- package/lib/types/_ActivatableSelectOptionCategory.js +381 -1
- package/lib/types/_ActivatableSkill.d.ts +1105 -34
- package/lib/types/_ActivatableSkill.js +82 -1
- package/lib/types/_ActivatableSkillCastingTime.d.ts +66 -74
- package/lib/types/_ActivatableSkillCastingTime.js +92 -1
- package/lib/types/_ActivatableSkillCheckResultBased.d.ts +25 -33
- package/lib/types/_ActivatableSkillCheckResultBased.js +44 -1
- package/lib/types/_ActivatableSkillCost.d.ts +209 -255
- package/lib/types/_ActivatableSkillCost.js +224 -1
- package/lib/types/_ActivatableSkillDuration.d.ts +202 -135
- package/lib/types/_ActivatableSkillDuration.js +138 -1
- package/lib/types/_ActivatableSkillEffect.d.ts +16 -68
- package/lib/types/_ActivatableSkillEffect.js +65 -1
- package/lib/types/_ActivatableSkillRange.d.ts +61 -115
- package/lib/types/_ActivatableSkillRange.js +106 -1
- package/lib/types/_ActivatableSkillTargetCategory.d.ts +13 -39
- package/lib/types/_ActivatableSkillTargetCategory.js +29 -1
- package/lib/types/_AlternativeNames.d.ts +5 -11
- package/lib/types/_AlternativeNames.js +14 -1
- package/lib/types/_ArcaneTradition.d.ts +30 -28
- package/lib/types/_ArcaneTradition.js +14 -4
- package/lib/types/_Blessed.d.ts +8 -22
- package/lib/types/_Blessed.js +22 -1
- package/lib/types/_CommonnessRatedAdvantageDisadvantage.d.ts +4 -10
- package/lib/types/_CommonnessRatedAdvantageDisadvantage.js +12 -1
- package/lib/types/_Dice.d.ts +6 -19
- package/lib/types/_Dice.js +23 -1
- package/lib/types/_DiseasePoison.d.ts +56 -107
- package/lib/types/_DiseasePoison.js +107 -2
- package/lib/types/_Enhancements.d.ts +165 -59
- package/lib/types/_Enhancements.js +66 -1
- package/lib/types/_I18n.d.ts +14 -42
- package/lib/types/_I18n.js +55 -1
- package/lib/types/_Identifier.d.ts +158 -1274
- package/lib/types/_Identifier.js +300 -1
- package/lib/types/_IdentifierGroup.d.ts +278 -29
- package/lib/types/_IdentifierGroup.js +340 -1
- package/lib/types/_ImprovementCost.d.ts +7 -4
- package/lib/types/_ImprovementCost.js +10 -1
- package/lib/types/_Influence.d.ts +78 -49
- package/lib/types/_Influence.js +42 -4
- package/lib/types/_Prerequisite.d.ts +370 -106
- package/lib/types/_Prerequisite.js +136 -1
- package/lib/types/_ResponsiveText.d.ts +13 -54
- package/lib/types/_ResponsiveText.js +37 -1
- package/lib/types/_Sex.d.ts +5 -7
- package/lib/types/_Sex.js +8 -4
- package/lib/types/_SkillCheck.d.ts +10 -15
- package/lib/types/_SkillCheck.js +34 -1
- package/lib/types/_Spellwork.d.ts +5 -18
- package/lib/types/_Spellwork.js +13 -1
- package/lib/types/equipment/EquipmentPackage.d.ts +80 -51
- package/lib/types/equipment/EquipmentPackage.js +34 -13
- package/lib/types/equipment/item/Ammunition.d.ts +69 -32
- package/lib/types/equipment/item/Ammunition.js +29 -13
- package/lib/types/equipment/item/Animal.d.ts +71 -19
- package/lib/types/equipment/item/Animal.js +15 -13
- package/lib/types/equipment/item/AnimalCare.d.ts +86 -49
- package/lib/types/equipment/item/AnimalCare.js +51 -13
- package/lib/types/equipment/item/Armor.d.ts +120 -186
- package/lib/types/equipment/item/Armor.js +156 -13
- package/lib/types/equipment/item/BandageOrRemedy.d.ts +176 -37
- package/lib/types/equipment/item/BandageOrRemedy.js +2 -14
- package/lib/types/equipment/item/Book.d.ts +84 -61
- package/lib/types/equipment/item/Book.js +57 -13
- package/lib/types/equipment/item/CeremonialItem.d.ts +178 -42
- package/lib/types/equipment/item/CeremonialItem.js +36 -13
- package/lib/types/equipment/item/Clothes.d.ts +176 -7
- package/lib/types/equipment/item/Clothes.js +2 -14
- package/lib/types/equipment/item/Container.d.ts +176 -7
- package/lib/types/equipment/item/Container.js +2 -14
- package/lib/types/equipment/item/Elixir.d.ts +91 -76
- package/lib/types/equipment/item/Elixir.js +54 -13
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +170 -29
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +28 -13
- package/lib/types/equipment/item/GemOrPreciousStone.d.ts +72 -44
- package/lib/types/equipment/item/GemOrPreciousStone.js +41 -13
- package/lib/types/equipment/item/IlluminationLightSource.d.ts +186 -61
- package/lib/types/equipment/item/IlluminationLightSource.js +61 -13
- package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +176 -0
- package/lib/types/equipment/item/IlluminationRefillOrSupply.js +2 -0
- package/lib/types/equipment/item/Jewelry.d.ts +73 -61
- package/lib/types/equipment/item/Jewelry.js +37 -13
- package/lib/types/equipment/item/Liebesspielzeug.d.ts +176 -7
- package/lib/types/equipment/item/Liebesspielzeug.js +2 -14
- package/lib/types/equipment/item/LuxuryGood.d.ts +176 -37
- package/lib/types/equipment/item/LuxuryGood.js +2 -14
- package/lib/types/equipment/item/MagicalArtifact.d.ts +71 -40
- package/lib/types/equipment/item/MagicalArtifact.js +15 -13
- package/lib/types/equipment/item/MusicalInstrument.d.ts +174 -32
- package/lib/types/equipment/item/MusicalInstrument.js +27 -13
- package/lib/types/equipment/item/OrienteeringAid.d.ts +176 -7
- package/lib/types/equipment/item/OrienteeringAid.js +2 -14
- package/lib/types/equipment/item/Poison.d.ts +483 -354
- package/lib/types/equipment/item/Poison.js +386 -13
- package/lib/types/equipment/item/RopeOrChain.d.ts +176 -7
- package/lib/types/equipment/item/RopeOrChain.js +2 -14
- package/lib/types/equipment/item/Stationery.d.ts +176 -0
- package/lib/types/equipment/item/Stationery.js +2 -0
- package/lib/types/equipment/item/ThievesTool.d.ts +176 -7
- package/lib/types/equipment/item/ThievesTool.js +2 -14
- package/lib/types/equipment/item/ToolOfTheTrade.d.ts +89 -61
- package/lib/types/equipment/item/ToolOfTheTrade.js +40 -13
- package/lib/types/equipment/item/TravelGearOrTool.d.ts +176 -7
- package/lib/types/equipment/item/TravelGearOrTool.js +2 -14
- package/lib/types/equipment/item/Vehicle.d.ts +71 -19
- package/lib/types/equipment/item/Vehicle.js +15 -13
- package/lib/types/equipment/item/Weapon.d.ts +223 -166
- package/lib/types/equipment/item/Weapon.js +153 -13
- package/lib/types/equipment/item/WeaponAccessory.d.ts +176 -7
- package/lib/types/equipment/item/WeaponAccessory.js +2 -14
- package/lib/types/equipment/item/_Herbary.d.ts +42 -16
- package/lib/types/equipment/item/_Herbary.js +36 -1
- package/lib/types/equipment/item/_Item.d.ts +317 -160
- package/lib/types/equipment/item/_Item.js +144 -1
- package/lib/types/equipment/item/_MeleeWeapon.d.ts +37 -105
- package/lib/types/equipment/item/_MeleeWeapon.js +92 -1
- package/lib/types/equipment/item/_RangedWeapon.d.ts +25 -106
- package/lib/types/equipment/item/_RangedWeapon.js +85 -1
- package/lib/types/equipment/item/_Weapon.d.ts +13 -57
- package/lib/types/equipment/item/_Weapon.js +49 -1
- package/lib/types/equipment/item/sub/ArmorType.d.ts +7 -37
- package/lib/types/equipment/item/sub/ArmorType.js +18 -13
- package/lib/types/equipment/item/sub/Reach.d.ts +6 -28
- package/lib/types/equipment/item/sub/Reach.js +14 -13
- package/lib/types/index.d.ts +148 -0
- package/lib/types/index.js +148 -0
- package/lib/types/magicalActions/AnimistPower.d.ts +299 -238
- package/lib/types/magicalActions/AnimistPower.js +182 -13
- package/lib/types/magicalActions/AnimistPower_Tribe.d.ts +6 -28
- package/lib/types/magicalActions/AnimistPower_Tribe.js +14 -13
- package/lib/types/magicalActions/Curse.d.ts +215 -162
- package/lib/types/magicalActions/Curse.js +126 -13
- package/lib/types/magicalActions/DominationRitual.d.ts +200 -145
- package/lib/types/magicalActions/DominationRitual.js +126 -13
- package/lib/types/magicalActions/ElvenMagicalSong.d.ts +121 -135
- package/lib/types/magicalActions/ElvenMagicalSong.js +111 -13
- package/lib/types/magicalActions/GeodeRitual.d.ts +205 -180
- package/lib/types/magicalActions/GeodeRitual.js +135 -13
- package/lib/types/magicalActions/JesterTrick.d.ts +299 -177
- package/lib/types/magicalActions/JesterTrick.js +153 -13
- package/lib/types/magicalActions/MagicalDance.d.ts +125 -119
- package/lib/types/magicalActions/MagicalDance.js +113 -13
- package/lib/types/magicalActions/MagicalMelody.d.ts +116 -124
- package/lib/types/magicalActions/MagicalMelody.js +111 -13
- package/lib/types/magicalActions/MagicalRune.d.ts +300 -294
- package/lib/types/magicalActions/MagicalRune.js +278 -13
- package/lib/types/magicalActions/ZibiljaRitual.d.ts +396 -102
- package/lib/types/magicalActions/ZibiljaRitual.js +81 -13
- package/lib/types/magicalActions/_MusicTradition.d.ts +17 -30
- package/lib/types/magicalActions/_MusicTradition.js +43 -1
- package/lib/types/prerequisites/ConditionalPrerequisites.d.ts +24 -10
- package/lib/types/prerequisites/ConditionalPrerequisites.js +9 -1
- package/lib/types/prerequisites/DisplayOption.d.ts +13 -32
- package/lib/types/prerequisites/DisplayOption.js +27 -1
- package/lib/types/prerequisites/PrerequisiteGroups.d.ts +1338 -215
- package/lib/types/prerequisites/PrerequisiteGroups.js +160 -1
- package/lib/types/prerequisites/single/ActivatablePrerequisite.d.ts +107 -31
- package/lib/types/prerequisites/single/ActivatablePrerequisite.js +32 -1
- package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +1 -2
- package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +4 -1
- package/lib/types/prerequisites/single/AnimistPowerPrerequisite.d.ts +18 -26
- package/lib/types/prerequisites/single/AnimistPowerPrerequisite.js +24 -1
- package/lib/types/prerequisites/single/CulturePrerequisite.d.ts +16 -13
- package/lib/types/prerequisites/single/CulturePrerequisite.js +16 -1
- package/lib/types/prerequisites/single/EnhancementPrerequisite.d.ts +4 -39
- package/lib/types/prerequisites/single/EnhancementPrerequisite.js +12 -1
- package/lib/types/prerequisites/single/InfluencePrerequisite.d.ts +17 -16
- package/lib/types/prerequisites/single/InfluencePrerequisite.js +19 -1
- package/lib/types/prerequisites/single/PactPrerequisite.d.ts +18 -23
- package/lib/types/prerequisites/single/PactPrerequisite.js +24 -1
- package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.d.ts +20 -18
- package/lib/types/prerequisites/single/PrimaryAttributePrerequisite.js +25 -1
- package/lib/types/prerequisites/single/PublicationPrerequisite.d.ts +16 -12
- package/lib/types/prerequisites/single/PublicationPrerequisite.js +15 -1
- package/lib/types/prerequisites/single/RacePrerequisite.d.ts +17 -16
- package/lib/types/prerequisites/single/RacePrerequisite.js +19 -1
- package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +51 -63
- package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +80 -1
- package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +26 -18
- package/lib/types/prerequisites/single/RatedPrerequisite.js +19 -1
- package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +17 -19
- package/lib/types/prerequisites/single/RatedSumPrerequisite.js +19 -1
- package/lib/types/prerequisites/single/RulePrerequisite.d.ts +19 -9
- package/lib/types/prerequisites/single/RulePrerequisite.js +15 -1
- package/lib/types/prerequisites/single/SexPrerequisite.d.ts +19 -10
- package/lib/types/prerequisites/single/SexPrerequisite.js +15 -1
- package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +7 -8
- package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +17 -1
- package/lib/types/prerequisites/single/SocialStatusPrerequisite.d.ts +16 -13
- package/lib/types/prerequisites/single/SocialStatusPrerequisite.js +16 -1
- package/lib/types/prerequisites/single/StatePrerequisite.d.ts +16 -10
- package/lib/types/prerequisites/single/StatePrerequisite.js +15 -1
- package/lib/types/prerequisites/single/TextPrerequisite.d.ts +19 -49
- package/lib/types/prerequisites/single/TextPrerequisite.js +53 -1
- package/lib/types/prerequisites/single/TraditionPrerequisite.d.ts +37 -33
- package/lib/types/prerequisites/single/TraditionPrerequisite.js +42 -1
- package/lib/types/rule/CoreRule.d.ts +142 -310
- package/lib/types/rule/CoreRule.js +172 -13
- package/lib/types/rule/FocusRule.d.ts +54 -53
- package/lib/types/rule/FocusRule.js +37 -13
- package/lib/types/rule/FocusRule_Subject.d.ts +6 -29
- package/lib/types/rule/FocusRule_Subject.js +15 -13
- package/lib/types/rule/OptionalRule.d.ts +52 -41
- package/lib/types/rule/OptionalRule.js +28 -13
- package/lib/types/source/Publication.d.ts +50 -70
- package/lib/types/source/Publication.js +57 -13
- package/lib/types/source/_Erratum.d.ts +9 -23
- package/lib/types/source/_Erratum.js +19 -1
- package/lib/types/source/_PublicationRef.d.ts +161 -148
- package/lib/types/source/_PublicationRef.js +98 -1
- package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +1034 -52
- package/lib/types/specialAbility/AdvancedCombatSpecialAbility.js +36 -13
- package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.d.ts +917 -34
- package/lib/types/specialAbility/AdvancedKarmaSpecialAbility.js +33 -13
- package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.d.ts +917 -34
- package/lib/types/specialAbility/AdvancedMagicalSpecialAbility.js +33 -13
- package/lib/types/specialAbility/AdvancedSkillSpecialAbility.d.ts +917 -34
- package/lib/types/specialAbility/AdvancedSkillSpecialAbility.js +33 -13
- package/lib/types/specialAbility/AncestorGlyph.d.ts +916 -38
- package/lib/types/specialAbility/AncestorGlyph.js +35 -13
- package/lib/types/specialAbility/BlessedTradition.d.ts +948 -147
- package/lib/types/specialAbility/BlessedTradition.js +131 -13
- package/lib/types/specialAbility/BrawlingSpecialAbility.d.ts +980 -34
- package/lib/types/specialAbility/BrawlingSpecialAbility.js +32 -13
- package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +918 -40
- package/lib/types/specialAbility/CeremonialItemSpecialAbility.js +33 -13
- package/lib/types/specialAbility/CombatSpecialAbility.d.ts +1036 -45
- package/lib/types/specialAbility/CombatSpecialAbility.js +37 -13
- package/lib/types/specialAbility/CombatStyleSpecialAbility.d.ts +1035 -42
- package/lib/types/specialAbility/CombatStyleSpecialAbility.js +37 -13
- package/lib/types/specialAbility/CommandSpecialAbility.d.ts +980 -38
- package/lib/types/specialAbility/CommandSpecialAbility.js +32 -13
- package/lib/types/specialAbility/FamiliarSpecialAbility.d.ts +915 -32
- package/lib/types/specialAbility/FamiliarSpecialAbility.js +30 -13
- package/lib/types/specialAbility/FatePointSexSpecialAbility.d.ts +915 -32
- package/lib/types/specialAbility/FatePointSexSpecialAbility.js +30 -13
- package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +917 -39
- package/lib/types/specialAbility/FatePointSpecialAbility.js +32 -13
- package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +918 -44
- package/lib/types/specialAbility/GeneralSpecialAbility.js +33 -13
- package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +915 -37
- package/lib/types/specialAbility/KarmaSpecialAbility.js +30 -13
- package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.d.ts +966 -36
- package/lib/types/specialAbility/LiturgicalStyleSpecialAbility.js +34 -13
- package/lib/types/specialAbility/LycantropicGift.d.ts +915 -32
- package/lib/types/specialAbility/LycantropicGift.js +30 -13
- package/lib/types/specialAbility/MagicStyleSpecialAbility.d.ts +966 -36
- package/lib/types/specialAbility/MagicStyleSpecialAbility.js +34 -13
- package/lib/types/specialAbility/MagicalSign.d.ts +86 -39
- package/lib/types/specialAbility/MagicalSign.js +31 -13
- package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +918 -43
- package/lib/types/specialAbility/MagicalSpecialAbility.js +33 -13
- package/lib/types/specialAbility/MagicalTradition.d.ts +938 -114
- package/lib/types/specialAbility/MagicalTradition.js +97 -13
- package/lib/types/specialAbility/PactGift.d.ts +992 -97
- package/lib/types/specialAbility/PactGift.js +118 -13
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +917 -46
- package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.js +41 -13
- package/lib/types/specialAbility/Sermon.d.ts +915 -32
- package/lib/types/specialAbility/Sermon.js +30 -13
- package/lib/types/specialAbility/SexSpecialAbility.d.ts +917 -34
- package/lib/types/specialAbility/SexSpecialAbility.js +32 -13
- package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +915 -37
- package/lib/types/specialAbility/SikaryanDrainSpecialAbility.js +30 -13
- package/lib/types/specialAbility/SkillStyleSpecialAbility.d.ts +964 -34
- package/lib/types/specialAbility/SkillStyleSpecialAbility.js +32 -13
- package/lib/types/specialAbility/VampiricGift.d.ts +915 -37
- package/lib/types/specialAbility/VampiricGift.js +30 -13
- package/lib/types/specialAbility/Vision.d.ts +915 -32
- package/lib/types/specialAbility/Vision.js +30 -13
- package/lib/types/specialAbility/_Tradition.d.ts +5 -12
- package/lib/types/specialAbility/_Tradition.js +14 -1
- package/lib/types/specialAbility/sub/Language.d.ts +107 -117
- package/lib/types/specialAbility/sub/Language.js +87 -13
- package/lib/types/specialAbility/sub/Script.d.ts +61 -60
- package/lib/types/specialAbility/sub/Script.js +43 -13
- package/lib/types/specialAbility/sub/TradeSecret.d.ts +77 -48
- package/lib/types/specialAbility/sub/TradeSecret.js +36 -13
- package/lib/types/specialAbility/sub/_LanguageScript.d.ts +5 -11
- package/lib/types/specialAbility/sub/_LanguageScript.js +15 -1
- package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/AttireEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/BowlEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +1136 -61
- package/lib/types/traditionArtifacts/CauldronEnchantment.js +41 -13
- package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/ChronicleEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/DaggerRitual.d.ts +1147 -71
- package/lib/types/traditionArtifacts/DaggerRitual.js +71 -13
- package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/FoolsHatEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/InstrumentEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +1135 -47
- package/lib/types/traditionArtifacts/Krallenkettenzauber.js +36 -13
- package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/OrbEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/RingEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/RingEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/SickleRitual.d.ts +1135 -47
- package/lib/types/traditionArtifacts/SickleRitual.js +36 -13
- package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +1135 -52
- package/lib/types/traditionArtifacts/SpellSwordEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +1139 -57
- package/lib/types/traditionArtifacts/StaffEnchantment.js +41 -13
- package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/ToyEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +1135 -47
- package/lib/types/traditionArtifacts/Trinkhornzauber.js +36 -13
- package/lib/types/traditionArtifacts/WandEnchantment.d.ts +1084 -42
- package/lib/types/traditionArtifacts/WandEnchantment.js +35 -13
- package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +1135 -47
- package/lib/types/traditionArtifacts/WeaponEnchantment.js +36 -13
- package/lib/types/traditionArtifacts/sub/AnimalShape.d.ts +8 -52
- package/lib/types/traditionArtifacts/sub/AnimalShape.js +23 -13
- package/lib/types/traditionArtifacts/sub/AnimalShapePath.d.ts +6 -28
- package/lib/types/traditionArtifacts/sub/AnimalShapePath.js +14 -13
- package/lib/types/traditionArtifacts/sub/AnimalShapeSize.d.ts +8 -40
- package/lib/types/traditionArtifacts/sub/AnimalShapeSize.js +22 -13
- package/lib/types/traditionArtifacts/sub/Brew.d.ts +6 -28
- package/lib/types/traditionArtifacts/sub/Brew.js +14 -13
- package/package.json +19 -16
- package/schema/Advantage.schema.json +3 -3
- package/schema/AnimalDisease.schema.json +4 -4
- package/schema/Aspect.schema.json +1 -1
- package/schema/Blessing.schema.json +3 -3
- package/schema/Cantrip.schema.json +4 -4
- package/schema/Ceremony.schema.json +9 -61
- package/schema/CombatTechnique_Close.schema.json +2 -2
- package/schema/CombatTechnique_Ranged.schema.json +2 -2
- package/schema/Condition.schema.json +4 -16
- package/schema/Continent.schema.json +1 -1
- package/schema/Culture.schema.json +46 -50
- package/schema/Disadvantage.schema.json +3 -3
- package/schema/Disease.schema.json +2 -2
- package/schema/FamiliarsTrick.schema.json +45 -71
- package/schema/Lessons_Curriculum.schema.json +26 -36
- package/schema/LiturgicalChant.schema.json +9 -61
- package/schema/Locale.schema.json +1 -1
- package/schema/MetaCondition.schema.json +5 -17
- package/schema/Patron.schema.json +60 -71
- package/schema/PatronCategory.schema.json +1 -1
- package/schema/PersonalityTrait.schema.json +2 -2
- package/schema/Profession.schema.json +68 -62
- package/schema/Property.schema.json +1 -1
- package/schema/Race.schema.json +17 -17
- package/schema/Ritual.schema.json +8 -60
- package/schema/SexPractice.schema.json +1 -1
- package/schema/Skill.schema.json +7 -7
- package/schema/SkillModificationLevel.schema.json +3 -3
- package/schema/Spell.schema.json +8 -60
- package/schema/UI.schema.json +272 -0
- package/schema/_Activatable.schema.json +52 -60
- package/schema/_ActivatableSelectOptionCategory.schema.json +31 -35
- package/schema/_ActivatableSkill.schema.json +16 -0
- package/schema/_ActivatableSkillCastingTime.schema.json +5 -5
- package/schema/_ActivatableSkillCost.schema.json +7 -7
- package/schema/_ActivatableSkillEffect.schema.json +20 -51
- package/schema/_ActivatableSkillRange.schema.json +2 -2
- package/schema/_ActivatableSkillTargetCategory.schema.json +8 -8
- package/schema/_Blessed.schema.json +1 -1
- package/schema/_DiseasePoison.schema.json +31 -23
- package/schema/_Enhancements.schema.json +1 -1
- package/schema/_I18n.schema.json +1 -1
- package/schema/_Identifier.schema.json +31 -1
- package/schema/_IdentifierGroup.schema.json +4 -1
- package/schema/_Influence.schema.json +2 -2
- package/schema/_Prerequisite.schema.json +15 -15
- package/schema/_ResponsiveText.schema.json +6 -6
- package/schema/_SkillCheck.schema.json +3 -14
- package/schema/_Spellwork.schema.json +1 -1
- package/schema/equipment/EquipmentPackage.schema.json +1 -1
- package/schema/equipment/item/Armor.schema.json +5 -5
- package/schema/equipment/item/BandageOrRemedy.schema.json +2 -2
- package/schema/equipment/item/Book.schema.json +1 -1
- package/schema/equipment/item/CeremonialItem.schema.json +2 -2
- package/schema/equipment/item/Elixir.schema.json +5 -25
- package/schema/equipment/item/EquipmentOfBlessedOnes.schema.json +1 -1
- package/schema/equipment/item/IlluminationLightSource.schema.json +4 -8
- package/schema/equipment/item/Jewelry.schema.json +1 -1
- package/schema/equipment/item/LuxuryGood.schema.json +2 -2
- package/schema/equipment/item/MusicalInstrument.schema.json +1 -1
- package/schema/equipment/item/Poison.schema.json +25 -17
- package/schema/equipment/item/ToolOfTheTrade.schema.json +1 -1
- package/schema/equipment/item/Weapon.schema.json +11 -11
- package/schema/equipment/item/_Item.schema.json +4 -4
- package/schema/equipment/item/_MeleeWeapon.schema.json +3 -7
- package/schema/equipment/item/_RangedWeapon.schema.json +5 -5
- package/schema/equipment/item/_Weapon.schema.json +2 -2
- package/schema/equipment/item/sub/ArmorType.schema.json +1 -1
- package/schema/magicalActions/AnimistPower.schema.json +10 -36
- package/schema/magicalActions/Curse.schema.json +5 -31
- package/schema/magicalActions/DominationRitual.schema.json +6 -32
- package/schema/magicalActions/ElvenMagicalSong.schema.json +4 -17
- package/schema/magicalActions/GeodeRitual.schema.json +7 -59
- package/schema/magicalActions/JesterTrick.schema.json +7 -59
- package/schema/magicalActions/MagicalDance.schema.json +7 -33
- package/schema/magicalActions/MagicalMelody.schema.json +7 -33
- package/schema/magicalActions/MagicalRune.schema.json +53 -146
- package/schema/magicalActions/ZibiljaRitual.schema.json +7 -59
- package/schema/magicalActions/_MusicTradition.schema.json +1 -1
- package/schema/magicalActions/_SkillReference.schema.json +2 -24
- package/schema/prerequisites/ConditionalPrerequisites.schema.json +1 -1
- package/schema/prerequisites/DisplayOption.schema.json +1 -1
- package/schema/prerequisites/single/ActivatablePrerequisite.schema.json +1 -1
- package/schema/prerequisites/single/EnhancementPrerequisite.schema.json +2 -2
- package/schema/prerequisites/single/PublicationPrerequisite.schema.json +1 -2
- package/schema/prerequisites/single/RacePrerequisite.schema.json +1 -1
- package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +2 -2
- package/schema/prerequisites/single/TextPrerequisite.schema.json +4 -4
- package/schema/prerequisites/single/TraditionPrerequisite.schema.json +4 -4
- package/schema/rule/CoreRule.schema.json +5 -5
- package/schema/rule/FocusRule.schema.json +1 -1
- package/schema/rule/OptionalRule.schema.json +1 -1
- package/schema/source/Publication.schema.json +2 -2
- package/schema/source/_PublicationRef.schema.json +9 -9
- package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +2 -2
- package/schema/specialAbility/BlessedTradition.schema.json +74 -52
- package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +2 -2
- package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +155 -504
- package/schema/specialAbility/CommandSpecialAbility.schema.json +23 -20
- package/schema/specialAbility/FatePointSpecialAbility.schema.json +1 -1
- package/schema/specialAbility/GeneralSpecialAbility.schema.json +1 -1
- package/schema/specialAbility/KarmaSpecialAbility.schema.json +1 -1
- package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +155 -504
- package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +155 -504
- package/schema/specialAbility/MagicalSign.schema.json +2 -2
- package/schema/specialAbility/MagicalSpecialAbility.schema.json +1 -1
- package/schema/specialAbility/MagicalTradition.schema.json +8 -8
- package/schema/specialAbility/PactGift.schema.json +4 -4
- package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +1 -1
- package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +155 -504
- package/schema/specialAbility/VampiricGift.schema.json +1 -1
- package/schema/specialAbility/_Tradition.schema.json +1 -1
- package/schema/specialAbility/sub/Language.schema.json +4 -4
- package/schema/traditionArtifacts/ArcaneOrbEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/AttireEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/BowlEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/CauldronEnchantment.schema.json +2 -2
- package/schema/traditionArtifacts/ChronicleEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/DaggerRitual.schema.json +14 -18
- package/schema/traditionArtifacts/FoolsHatEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/InstrumentEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/Krallenkettenzauber.schema.json +1 -1
- package/schema/traditionArtifacts/OrbEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/RingEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/SickleRitual.schema.json +1 -1
- package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +2 -2
- package/schema/traditionArtifacts/StaffEnchantment.schema.json +2 -2
- package/schema/traditionArtifacts/ToyEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/Trinkhornzauber.schema.json +1 -1
- package/schema/traditionArtifacts/WandEnchantment.schema.json +1 -1
- package/schema/traditionArtifacts/WeaponEnchantment.schema.json +1 -1
- package/.prettierrc.yml +0 -3
- package/lib/cache/activatableSelectOptions.d.ts +0 -80
- package/lib/cache/activatableSelectOptions.js +0 -935
- package/lib/cache/ancestorBloodAdvantages.d.ts +0 -5
- package/lib/cache/ancestorBloodAdvantages.js +0 -18
- package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.d.ts +0 -20
- package/lib/cache/magicalAndBlessedAdvantagesAndDisadvantages.js +0 -164
- package/lib/cache/newApplicationsAndUses.d.ts +0 -20
- package/lib/cache/newApplicationsAndUses.js +0 -126
- package/lib/cacheConfig.d.ts +0 -4
- package/lib/cacheConfig.js +0 -1
- package/lib/config/build.d.ts +0 -6
- package/lib/config/build.js +0 -8
- package/lib/config/cache.d.ts +0 -16
- package/lib/config/cache.js +0 -10
- package/lib/config/types.d.ts +0 -462
- package/lib/config/types.js +0 -306
- package/lib/errors.d.ts +0 -20
- package/lib/errors.js +0 -33
- package/lib/helpers/array.d.ts +0 -14
- package/lib/helpers/array.js +0 -15
- package/lib/helpers/i18n.d.ts +0 -1
- package/lib/helpers/i18n.js +0 -1
- package/lib/helpers/io.d.ts +0 -29
- package/lib/helpers/io.js +0 -51
- package/lib/helpers/objectPath.d.ts +0 -13
- package/lib/helpers/objectPath.js +0 -3
- package/lib/helpers/pair.d.ts +0 -20
- package/lib/helpers/pair.js +0 -20
- package/lib/helpers/result.d.ts +0 -57
- package/lib/helpers/result.js +0 -45
- package/lib/rendering/UI.d.ts +0 -14
- package/lib/rendering/UI.js +0 -28
- package/lib/typeConfig.d.ts +0 -10
- package/lib/typeConfig.js +0 -1
- package/lib/types/CombatTechnique_Close.d.ts +0 -73
- package/lib/types/CombatTechnique_Close.js +0 -14
- package/lib/types/CombatTechnique_Ranged.d.ts +0 -66
- package/lib/types/CombatTechnique_Ranged.js +0 -14
- package/lib/types/Kirchenpraegung.d.ts +0 -10
- package/lib/types/Kirchenpraegung.js +0 -14
- package/lib/types/Lessons_Curriculum.d.ts +0 -236
- package/lib/types/Lessons_Curriculum.js +0 -14
- package/lib/types/Lessons_Guideline.d.ts +0 -34
- package/lib/types/Lessons_Guideline.js +0 -14
- package/lib/types/UI.d.ts +0 -1216
- package/lib/types/UI.js +0 -14
- package/lib/types/_LocaleMap.d.ts +0 -10
- package/lib/types/_LocaleMap.js +0 -1
- package/lib/types/_NonEmptyString.d.ts +0 -9
- package/lib/types/_NonEmptyString.js +0 -1
- package/lib/types/_SimpleReferences.d.ts +0 -134
- package/lib/types/_SimpleReferences.js +0 -1
- package/lib/types/equipment/item/IlluminationRefillsOrSupplies.d.ts +0 -7
- package/lib/types/equipment/item/IlluminationRefillsOrSupplies.js +0 -14
- package/lib/types/equipment/item/Stationary.d.ts +0 -7
- package/lib/types/equipment/item/Stationary.js +0 -14
- package/lib/types/magicalActions/_SkillReference.d.ts +0 -11
- package/lib/types/magicalActions/_SkillReference.js +0 -1
- package/lib/validation/builders/integrity.d.ts +0 -56
- package/lib/validation/builders/integrity.js +0 -44
- package/lib/validation/builders/naming.d.ts +0 -15
- package/lib/validation/builders/naming.js +0 -17
- package/lib/validation/builders/schema.d.ts +0 -31
- package/lib/validation/builders/schema.js +0 -32
- package/lib/validation/filename.d.ts +0 -9
- package/lib/validation/filename.js +0 -10
- package/lib/validation/raw.d.ts +0 -8
- package/lib/validation/raw.js +0 -54
- package/lib/validation/schema.d.ts +0 -6
- package/lib/validation/schema.js +0 -32
package/lib/types/Culture.js
CHANGED
|
@@ -1,14 +1,356 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
7
|
-
import {
|
|
8
|
-
|
|
1
|
+
import { Array, Boolean, Entity, Enum, EnumCase, GenIncludeIdentifier, GenTypeAlias, IncludeIdentifier, Integer, Object, Optional, Param, Required, String, TypeAlias, TypeArgument, } from "tsondb/schema/def";
|
|
2
|
+
import { CommonnessRatedAdvantageDisadvantage } from "./_CommonnessRatedAdvantageDisadvantage.js";
|
|
3
|
+
import { AdvantageIdentifier, BlessedTraditionIdentifier, DisadvantageIdentifier, LanguageIdentifier, MagicalTraditionIdentifier, ProfessionIdentifier, ProfessionVariantIdentifier, ScriptIdentifier, SkillIdentifier, SocialStatusIdentifier, } from "./_Identifier.js";
|
|
4
|
+
import { BinarySex } from "./_Sex.js";
|
|
5
|
+
import { NestedLocaleMap } from "./Locale.js";
|
|
6
|
+
import { MundaneProfessionGroup } from "./Profession.js";
|
|
7
|
+
import { Errata } from "./source/_Erratum.js";
|
|
8
|
+
import { src } from "./source/_PublicationRef.js";
|
|
9
|
+
export const Culture = Entity(import.meta.url, {
|
|
9
10
|
name: "Culture",
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
11
|
+
namePlural: "Cultures",
|
|
12
|
+
type: () => Object({
|
|
13
|
+
language: Required({
|
|
14
|
+
comment: "A list of native languages (usually it is only one).",
|
|
15
|
+
type: Array(LanguageIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
16
|
+
}),
|
|
17
|
+
script: Optional({
|
|
18
|
+
comment: "A list of native scripts (usually it is only one). If the culture does not use any script, leave this array empty.",
|
|
19
|
+
type: Array(ScriptIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
20
|
+
}),
|
|
21
|
+
area_knowledge: Required({
|
|
22
|
+
comment: "If the area knowledge has a fixed value or can be adjusted.",
|
|
23
|
+
type: IncludeIdentifier(AreaKnowledge),
|
|
24
|
+
}),
|
|
25
|
+
social_status: Required({
|
|
26
|
+
comment: "A list of possible social status in the respective culture.",
|
|
27
|
+
type: Array(SocialStatusIdentifier(), { minItems: 1, uniqueItems: true }),
|
|
28
|
+
}),
|
|
29
|
+
common_professions: Required({
|
|
30
|
+
comment: "A list of professions that are typical for the culture, as well as professions that are rarely practiced or encountered in the culture. The list is either defined by group (as multiple lists) or plain (as a single list).",
|
|
31
|
+
type: IncludeIdentifier(CommonProfessions),
|
|
32
|
+
}),
|
|
33
|
+
common_advantages: Optional({
|
|
34
|
+
comment: "A list of common advantages.",
|
|
35
|
+
type: Array(GenIncludeIdentifier(CommonnessRatedAdvantageDisadvantage, [AdvantageIdentifier()]), { minItems: 1 }),
|
|
36
|
+
}),
|
|
37
|
+
common_disadvantages: Optional({
|
|
38
|
+
comment: "A list of common disadvantages.",
|
|
39
|
+
type: Array(GenIncludeIdentifier(CommonnessRatedAdvantageDisadvantage, [DisadvantageIdentifier()]), { minItems: 1 }),
|
|
40
|
+
}),
|
|
41
|
+
uncommon_advantages: Optional({
|
|
42
|
+
comment: "A list of uncommon advantages.",
|
|
43
|
+
type: Array(GenIncludeIdentifier(CommonnessRatedAdvantageDisadvantage, [AdvantageIdentifier()]), { minItems: 1 }),
|
|
44
|
+
}),
|
|
45
|
+
uncommon_disadvantages: Optional({
|
|
46
|
+
comment: "A list of uncommon disadvantages.",
|
|
47
|
+
type: Array(GenIncludeIdentifier(CommonnessRatedAdvantageDisadvantage, [DisadvantageIdentifier()]), { minItems: 1 }),
|
|
48
|
+
}),
|
|
49
|
+
common_skills: Required({
|
|
50
|
+
comment: "A list of common skills.",
|
|
51
|
+
type: Array(IncludeIdentifier(CommonnessRatedSkill), { minItems: 1 }),
|
|
52
|
+
}),
|
|
53
|
+
uncommon_skills: Optional({
|
|
54
|
+
comment: "A list of uncommon skills.",
|
|
55
|
+
type: Array(IncludeIdentifier(CommonnessRatedSkill), { minItems: 1 }),
|
|
56
|
+
}),
|
|
57
|
+
cultural_package: Required({
|
|
58
|
+
comment: "The skill points you get for buying the culture package.",
|
|
59
|
+
type: Array(IncludeIdentifier(CulturalPackageItem), { minItems: 1 }),
|
|
60
|
+
}),
|
|
61
|
+
src,
|
|
62
|
+
translations: NestedLocaleMap(Required, "CultureTranslation", Object({
|
|
63
|
+
name: Required({
|
|
64
|
+
comment: "The race’s name.",
|
|
65
|
+
type: String({ minLength: 1 }),
|
|
66
|
+
}),
|
|
67
|
+
area_knowledge: Required({
|
|
68
|
+
comment: "The description of the area knowledge.",
|
|
69
|
+
type: IncludeIdentifier(AreaKnowledgeTranslation),
|
|
70
|
+
}),
|
|
71
|
+
common_advantages: Optional({
|
|
72
|
+
comment: "The respective common advantages text from the source book.",
|
|
73
|
+
type: String({ minLength: 1 }),
|
|
74
|
+
}),
|
|
75
|
+
common_disadvantages: Optional({
|
|
76
|
+
comment: "The respective common disadvantages text from the source book.",
|
|
77
|
+
type: String({ minLength: 1 }),
|
|
78
|
+
}),
|
|
79
|
+
uncommon_advantages: Optional({
|
|
80
|
+
comment: "The respective uncommon advantages text from the source book.",
|
|
81
|
+
type: String({ minLength: 1 }),
|
|
82
|
+
}),
|
|
83
|
+
uncommon_disadvantages: Optional({
|
|
84
|
+
comment: "The respective uncommon disadvantages text from the source book.",
|
|
85
|
+
type: String({ minLength: 1 }),
|
|
86
|
+
}),
|
|
87
|
+
common_names: Required({
|
|
88
|
+
comment: "Structured description of common names.",
|
|
89
|
+
type: IncludeIdentifier(CommonNames),
|
|
90
|
+
}),
|
|
91
|
+
errata: Optional({
|
|
92
|
+
type: IncludeIdentifier(Errata),
|
|
93
|
+
}),
|
|
94
|
+
})),
|
|
95
|
+
}),
|
|
96
|
+
displayName: {},
|
|
97
|
+
});
|
|
98
|
+
const AreaKnowledge = TypeAlias(import.meta.url, {
|
|
99
|
+
name: "AreaKnowledge",
|
|
100
|
+
comment: "If the area knowledge has a fixed value or can be adjusted.",
|
|
101
|
+
type: () => Object({
|
|
102
|
+
is_fixed: Required({
|
|
103
|
+
comment: "`true` if the area knowledge has a fixed value, `false` if it can be adjusted.",
|
|
104
|
+
type: Boolean(),
|
|
105
|
+
}),
|
|
106
|
+
}),
|
|
107
|
+
});
|
|
108
|
+
const CommonnessWeight = Enum(import.meta.url, {
|
|
109
|
+
name: "CommonnessWeight",
|
|
110
|
+
comment: "The “weight” difference compared to other professions or profession variants. Some professions or profession variants are simply more common (`Mostly`), but sometimes only specific elements are used (`Only`).",
|
|
111
|
+
values: () => ({
|
|
112
|
+
Mostly: EnumCase({ type: null }),
|
|
113
|
+
Only: EnumCase({ type: null }),
|
|
114
|
+
}),
|
|
115
|
+
});
|
|
116
|
+
const Weighted = GenTypeAlias(import.meta.url, {
|
|
117
|
+
name: "Weighted",
|
|
118
|
+
comment: "Some professions or profession variants are more common than others. There may be cultures where some professions or profession variants are not represented at all.",
|
|
119
|
+
parameters: [Param("ProfessionOrVariant")],
|
|
120
|
+
type: ProfessionOrVariant => Object({
|
|
121
|
+
elements: Required({
|
|
122
|
+
comment: "The list of more common professions or profession variants.",
|
|
123
|
+
type: Array(TypeArgument(ProfessionOrVariant), { minItems: 1 }),
|
|
124
|
+
}),
|
|
125
|
+
weight: Required({
|
|
126
|
+
comment: "The list of more common professions or profession variants.",
|
|
127
|
+
type: IncludeIdentifier(CommonnessWeight),
|
|
128
|
+
}),
|
|
129
|
+
}),
|
|
130
|
+
});
|
|
131
|
+
const CommonProfessionConstraintsOperation = Enum(import.meta.url, {
|
|
132
|
+
name: "CommonProfessionConstraintsOperation",
|
|
133
|
+
comment: "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints or only the professions are kept that are different from the constraints.",
|
|
134
|
+
values: () => ({
|
|
135
|
+
Intersection: EnumCase({ type: null }),
|
|
136
|
+
Difference: EnumCase({ type: null }),
|
|
137
|
+
}),
|
|
138
|
+
});
|
|
139
|
+
const CommonProfessionConstraints = GenTypeAlias(import.meta.url, {
|
|
140
|
+
name: "CommonProfessionConstraints",
|
|
141
|
+
comment: "A list of professions. The filter specifies how the list is applied to all mundane professions.",
|
|
142
|
+
parameters: [Param("Constraint")],
|
|
143
|
+
type: Constraint => Object({
|
|
144
|
+
constraints: Required({
|
|
145
|
+
comment: "The list of constraints.",
|
|
146
|
+
type: Array(TypeArgument(Constraint), { minItems: 1 }),
|
|
147
|
+
}),
|
|
148
|
+
operation: Required({
|
|
149
|
+
comment: "This defines how the list of constraints should be offset against the list of all mundane professions: Either only the professions are kept that intersect with the constraints or only the professions are kept that are different from the constraints.",
|
|
150
|
+
type: IncludeIdentifier(CommonProfessionConstraintsOperation),
|
|
151
|
+
}),
|
|
152
|
+
}),
|
|
153
|
+
});
|
|
154
|
+
const Rarity = Enum(import.meta.url, {
|
|
155
|
+
name: "Rarity",
|
|
156
|
+
comment: "Some professions may be found in a culture, but are not that common.",
|
|
157
|
+
values: () => ({
|
|
158
|
+
Rare: EnumCase({ type: null }),
|
|
159
|
+
VeryRare: EnumCase({ type: null }),
|
|
160
|
+
}),
|
|
161
|
+
});
|
|
162
|
+
const ProfessionConstraint = TypeAlias(import.meta.url, {
|
|
163
|
+
name: "ProfessionConstraint",
|
|
164
|
+
type: () => Object({
|
|
165
|
+
id: Required({
|
|
166
|
+
comment: "The profession’s identifier.",
|
|
167
|
+
type: ProfessionIdentifier(),
|
|
168
|
+
}),
|
|
169
|
+
weighted_variants: Optional({
|
|
170
|
+
comment: "Some profession variants are more common than others. There may be cultures where some variants are not represented at all.",
|
|
171
|
+
type: GenIncludeIdentifier(Weighted, [ProfessionVariantIdentifier()]),
|
|
172
|
+
}),
|
|
173
|
+
rarity: Optional({
|
|
174
|
+
comment: "Some professions may be found in a culture, but are not that common.",
|
|
175
|
+
type: IncludeIdentifier(Rarity),
|
|
176
|
+
}),
|
|
177
|
+
}),
|
|
178
|
+
});
|
|
179
|
+
const MagicalTraditionConstraint = TypeAlias(import.meta.url, {
|
|
180
|
+
name: "MagicalTraditionConstraint",
|
|
181
|
+
type: () => Object({
|
|
182
|
+
id: Required({
|
|
183
|
+
comment: "The magical tradition’s identifier.",
|
|
184
|
+
type: MagicalTraditionIdentifier(),
|
|
185
|
+
}),
|
|
186
|
+
weighted_professions: Optional({
|
|
187
|
+
comment: "Some professions are more common than others. There may be cultures where some professions are not represented at all.",
|
|
188
|
+
type: GenIncludeIdentifier(Weighted, [ProfessionIdentifier()]),
|
|
189
|
+
}),
|
|
190
|
+
rarity: Optional({
|
|
191
|
+
comment: "Some traditions may be found in a culture, but are not that common.",
|
|
192
|
+
type: IncludeIdentifier(Rarity),
|
|
193
|
+
}),
|
|
194
|
+
}),
|
|
195
|
+
});
|
|
196
|
+
const BlessedTraditionConstraint = TypeAlias(import.meta.url, {
|
|
197
|
+
name: "BlessedTraditionConstraint",
|
|
198
|
+
type: () => Object({
|
|
199
|
+
id: Required({
|
|
200
|
+
comment: "The blessed tradition’s identifier.",
|
|
201
|
+
type: BlessedTraditionIdentifier(),
|
|
202
|
+
}),
|
|
203
|
+
weighted_professions: Optional({
|
|
204
|
+
comment: "Some professions are more common than others. There may be cultures where some professions are not represented at all.",
|
|
205
|
+
type: GenIncludeIdentifier(Weighted, [ProfessionIdentifier()]),
|
|
206
|
+
}),
|
|
207
|
+
rarity: Optional({
|
|
208
|
+
comment: "Some traditions may be found in a culture, but are not that common.",
|
|
209
|
+
type: IncludeIdentifier(Rarity),
|
|
210
|
+
}),
|
|
211
|
+
}),
|
|
212
|
+
});
|
|
213
|
+
const MundaneCommonProfessionConstraint = Enum(import.meta.url, {
|
|
214
|
+
name: "MundaneCommonProfessionConstraint",
|
|
215
|
+
values: () => ({
|
|
216
|
+
Profession: EnumCase({ type: IncludeIdentifier(ProfessionConstraint) }),
|
|
217
|
+
ProfessionSubgroup: EnumCase({ type: IncludeIdentifier(MundaneProfessionGroup) }),
|
|
218
|
+
}),
|
|
219
|
+
});
|
|
220
|
+
const MagicCommonProfessionConstraint = Enum(import.meta.url, {
|
|
221
|
+
name: "MagicCommonProfessionConstraint",
|
|
222
|
+
values: () => ({
|
|
223
|
+
Tradition: EnumCase({ type: IncludeIdentifier(MagicalTraditionConstraint) }),
|
|
224
|
+
MagicDilettante: EnumCase({ type: null }),
|
|
225
|
+
Profession: EnumCase({ type: IncludeIdentifier(ProfessionConstraint) }),
|
|
226
|
+
}),
|
|
227
|
+
});
|
|
228
|
+
const BlessedCommonProfessionConstraint = Enum(import.meta.url, {
|
|
229
|
+
name: "BlessedCommonProfessionConstraint",
|
|
230
|
+
values: () => ({
|
|
231
|
+
Tradition: EnumCase({ type: IncludeIdentifier(BlessedTraditionConstraint) }),
|
|
232
|
+
}),
|
|
233
|
+
});
|
|
234
|
+
const PlainCommonProfessions = TypeAlias(import.meta.url, {
|
|
235
|
+
name: "PlainCommonProfessions",
|
|
236
|
+
type: () => GenIncludeIdentifier(CommonProfessionConstraints, [ProfessionIdentifier()]),
|
|
237
|
+
});
|
|
238
|
+
const GroupedCommonProfessions = TypeAlias(import.meta.url, {
|
|
239
|
+
name: "GroupedCommonProfessions",
|
|
240
|
+
comment: "Lists of professions by group.",
|
|
241
|
+
type: () => Object({
|
|
242
|
+
mundane: Optional({
|
|
243
|
+
type: GenIncludeIdentifier(CommonProfessionConstraints, [
|
|
244
|
+
IncludeIdentifier(MundaneCommonProfessionConstraint),
|
|
245
|
+
]),
|
|
246
|
+
}),
|
|
247
|
+
magic: Optional({
|
|
248
|
+
type: GenIncludeIdentifier(CommonProfessionConstraints, [
|
|
249
|
+
IncludeIdentifier(MagicCommonProfessionConstraint),
|
|
250
|
+
]),
|
|
251
|
+
}),
|
|
252
|
+
blessed: Optional({
|
|
253
|
+
type: GenIncludeIdentifier(CommonProfessionConstraints, [
|
|
254
|
+
IncludeIdentifier(BlessedCommonProfessionConstraint),
|
|
255
|
+
]),
|
|
256
|
+
}),
|
|
257
|
+
}, { minProperties: 1 }),
|
|
258
|
+
});
|
|
259
|
+
const CommonProfessions = Enum(import.meta.url, {
|
|
260
|
+
name: "CommonProfessions",
|
|
261
|
+
comment: "A list of professions that are typical for the culture, as well as professions that are rarely practiced or encountered in the culture. The list is either defined by group (as multiple lists) or plain (as a single list).",
|
|
262
|
+
values: () => ({
|
|
263
|
+
Plain: EnumCase({ type: IncludeIdentifier(PlainCommonProfessions) }),
|
|
264
|
+
Grouped: EnumCase({ type: IncludeIdentifier(GroupedCommonProfessions) }),
|
|
265
|
+
}),
|
|
266
|
+
});
|
|
267
|
+
const CommonnessRatedSkill = TypeAlias(import.meta.url, {
|
|
268
|
+
name: "CommonnessRatedSkill",
|
|
269
|
+
type: () => SkillIdentifier(),
|
|
270
|
+
});
|
|
271
|
+
const CulturalPackageItem = TypeAlias(import.meta.url, {
|
|
272
|
+
name: "CulturalPackageItem",
|
|
273
|
+
type: () => Object({
|
|
274
|
+
id: Required({
|
|
275
|
+
comment: "The skill’s identifier.",
|
|
276
|
+
type: SkillIdentifier(),
|
|
277
|
+
}),
|
|
278
|
+
points: Required({
|
|
279
|
+
comment: "The skill points for the respective skill you get for buying the cultural package.",
|
|
280
|
+
type: Integer({ minimum: 1, maximum: 2 }),
|
|
281
|
+
}),
|
|
282
|
+
}),
|
|
283
|
+
});
|
|
284
|
+
const AreaKnowledgeTranslation = TypeAlias(import.meta.url, {
|
|
285
|
+
name: "AreaKnowledgeTranslation",
|
|
286
|
+
comment: "Description and examples of the area knowledge.",
|
|
287
|
+
type: () => Object({
|
|
288
|
+
description: Required({
|
|
289
|
+
comment: "The full description without examples in parenthesis.",
|
|
290
|
+
type: String({ minLength: 1 }),
|
|
291
|
+
}),
|
|
292
|
+
abbreviated: Required({
|
|
293
|
+
comment: "A shorter version of the description, used in input fields and other UI elements where the space might be to small to use the full description.",
|
|
294
|
+
type: String({ minLength: 1 }),
|
|
295
|
+
}),
|
|
296
|
+
examples: Optional({
|
|
297
|
+
comment: "Examples of areas, if applicable.",
|
|
298
|
+
type: Array(IncludeIdentifier(AreaKnowledgeExample), { minItems: 1 }),
|
|
299
|
+
}),
|
|
300
|
+
}),
|
|
301
|
+
});
|
|
302
|
+
const AreaKnowledgeExample = TypeAlias(import.meta.url, {
|
|
303
|
+
name: "AreaKnowledgeExample",
|
|
304
|
+
type: () => Object({
|
|
305
|
+
area: Required({
|
|
306
|
+
type: String({ minLength: 1 }),
|
|
307
|
+
}),
|
|
308
|
+
}),
|
|
309
|
+
});
|
|
310
|
+
const CommonNames = TypeAlias(import.meta.url, {
|
|
311
|
+
name: "CommonNames",
|
|
312
|
+
comment: "Structured description of common names.",
|
|
313
|
+
type: () => Object({
|
|
314
|
+
first_name_groups: Optional({
|
|
315
|
+
comment: "First names can be gender-neutral, but they can also be for a specific binary sex. They are sorted into groups.",
|
|
316
|
+
type: Array(IncludeIdentifier(CommonNameGroup), { minItems: 1 }),
|
|
317
|
+
}),
|
|
318
|
+
last_name_groups: Optional({
|
|
319
|
+
comment: "Last names can be gender-neutral, like family names, but they can also be for a specific binary sex. They are sorted into groups.",
|
|
320
|
+
type: Array(IncludeIdentifier(CommonNameGroup), { minItems: 1 }),
|
|
321
|
+
}),
|
|
322
|
+
naming_rules: Optional({
|
|
323
|
+
comment: "Special naming rules.",
|
|
324
|
+
type: String({ minLength: 1 }),
|
|
325
|
+
}),
|
|
326
|
+
}, { minProperties: 1 }),
|
|
327
|
+
});
|
|
328
|
+
const CommonNameGroup = TypeAlias(import.meta.url, {
|
|
329
|
+
name: "CommonNameGroup",
|
|
330
|
+
type: () => Object({
|
|
331
|
+
label: Required({
|
|
332
|
+
comment: "The group label.",
|
|
333
|
+
type: String({ minLength: 1 }),
|
|
334
|
+
}),
|
|
335
|
+
sex: Optional({
|
|
336
|
+
comment: "The binary sex if the group is only for a certain binary sex.",
|
|
337
|
+
type: IncludeIdentifier(BinarySex),
|
|
338
|
+
}),
|
|
339
|
+
names: Required({
|
|
340
|
+
comment: "The names from the group.",
|
|
341
|
+
type: Array(IncludeIdentifier(CommonName), { minItems: 1 }),
|
|
342
|
+
}),
|
|
343
|
+
}, { minProperties: 1 }),
|
|
344
|
+
});
|
|
345
|
+
const CommonName = TypeAlias(import.meta.url, {
|
|
346
|
+
name: "CommonName",
|
|
347
|
+
type: () => Object({
|
|
348
|
+
name: Required({
|
|
349
|
+
type: String({ minLength: 1 }),
|
|
350
|
+
}),
|
|
351
|
+
note: Optional({
|
|
352
|
+
comment: "Additional information about the name, appended in parenthesis.",
|
|
353
|
+
type: String({ minLength: 1 }),
|
|
354
|
+
}),
|
|
355
|
+
}, { minProperties: 1 }),
|
|
356
|
+
});
|
|
@@ -1,61 +1,76 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
}
|
|
61
|
-
|
|
1
|
+
import { Entity, IncludeIdentifier, Object, String, TypeAlias } from "tsondb/schema/def";
|
|
2
|
+
export declare const DerivedCharacteristic: Entity<"DerivedCharacteristic", {
|
|
3
|
+
prerequisites: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"DerivedCharacteristicPrerequisites", IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], TypeAlias<"PlainPrerequisites", import("tsondb/schema/def").ArrayType<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], import("tsondb/schema/def").EnumDecl<"PrerequisitesElement", {
|
|
4
|
+
Single: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>>;
|
|
5
|
+
Disjunction: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], TypeAlias<"PrerequisitesDisjunction", Object<{
|
|
6
|
+
list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>>, true>;
|
|
7
|
+
display_option: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"DisplayOption", {
|
|
8
|
+
Hide: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
9
|
+
ReplaceWith: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"ReplacementDisplayOption", Object<{
|
|
10
|
+
sentence_type: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"SentenceType", {
|
|
11
|
+
Standalone: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
12
|
+
Connected: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
13
|
+
}, []>>, false>;
|
|
14
|
+
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"ReplacementDisplayOptionTranslation", {
|
|
15
|
+
replacement: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
16
|
+
}>, true>;
|
|
17
|
+
}>, []>>>;
|
|
18
|
+
}, []>>, false>;
|
|
19
|
+
}>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>;
|
|
20
|
+
Group: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<import("tsondb/schema/def").TypeParameter<string, import("tsondb/schema/def").Type>[], TypeAlias<"PrerequisiteGroup", Object<{
|
|
21
|
+
list: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<import("tsondb/schema/def").TypeArgumentType<import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>>>, true>;
|
|
22
|
+
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"PrerequisiteGroupTranslation", {
|
|
23
|
+
text: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
24
|
+
}>, true>;
|
|
25
|
+
}>, [T: import("tsondb/schema/def").TypeParameter<"T", import("tsondb/schema/def").Type>]>>>;
|
|
26
|
+
}, [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>;
|
|
27
|
+
src: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"PublicationRefs", import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PublicationRef", Object<{
|
|
28
|
+
id: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ReferenceIdentifierType, true>;
|
|
29
|
+
occurrences: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"Occurrence", {
|
|
30
|
+
initial: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"InitialOccurrence", Object<{
|
|
31
|
+
printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, false>;
|
|
32
|
+
pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
|
|
33
|
+
first_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
|
|
34
|
+
InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
35
|
+
InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
36
|
+
Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
|
|
37
|
+
}, []>>, true>;
|
|
38
|
+
last_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
|
|
39
|
+
InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
40
|
+
InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
41
|
+
Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
|
|
42
|
+
}, []>>, false>;
|
|
43
|
+
}>, []>>>, true>;
|
|
44
|
+
}>, []>>, true>;
|
|
45
|
+
revisions: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Revision", {
|
|
46
|
+
Since: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"Since", Object<{
|
|
47
|
+
printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
48
|
+
pages: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").ArrayType<IncludeIdentifier<[], TypeAlias<"PageRange", Object<{
|
|
49
|
+
first_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
|
|
50
|
+
InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
51
|
+
InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
52
|
+
Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
|
|
53
|
+
}, []>>, true>;
|
|
54
|
+
last_page: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], import("tsondb/schema/def").EnumDecl<"Page", {
|
|
55
|
+
InsideCoverFront: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
56
|
+
InsideCoverBack: import("tsondb/schema/def").EnumCaseDecl<null>;
|
|
57
|
+
Numbered: import("tsondb/schema/def").EnumCaseDecl<import("tsondb/schema/def").IntegerType>;
|
|
58
|
+
}, []>>, false>;
|
|
59
|
+
}>, []>>>, true>;
|
|
60
|
+
}>, []>>>;
|
|
61
|
+
Deprecated: import("tsondb/schema/def").EnumCaseDecl<IncludeIdentifier<[], TypeAlias<"Deprecation", Object<{
|
|
62
|
+
printing: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").IntegerType, true>;
|
|
63
|
+
}>, []>>>;
|
|
64
|
+
}, []>>>, false>;
|
|
65
|
+
}>, true>;
|
|
66
|
+
}>, []>>>, []>>, true>;
|
|
67
|
+
translations: import("tsondb/schema/def").MemberDecl<import("tsondb/schema/def").NestedEntityMapType<"DerivedCharacteristicTranslation", {
|
|
68
|
+
name: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
69
|
+
abbreviation: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
70
|
+
calculation: import("tsondb/schema/def").MemberDecl<IncludeIdentifier<[], TypeAlias<"CalculationTranslation", Object<{
|
|
71
|
+
default: import("tsondb/schema/def").MemberDecl<String, true>;
|
|
72
|
+
half_primary: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
73
|
+
no_primary: import("tsondb/schema/def").MemberDecl<String, false>;
|
|
74
|
+
}>, []>>, false>;
|
|
75
|
+
}>, true>;
|
|
76
|
+
}, undefined>;
|
|
@@ -1,14 +1,46 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
import { createSchemaValidator } from "../validation/builders/schema.js";
|
|
7
|
-
import { getFilenamePrefixAsNumericId } from "../validation/filename.js";
|
|
8
|
-
export const config = {
|
|
1
|
+
import { Entity, IncludeIdentifier, Object, Optional, Required, String, TypeAlias, } from "tsondb/schema/def";
|
|
2
|
+
import { NestedLocaleMap } from "./Locale.js";
|
|
3
|
+
import { DerivedCharacteristicPrerequisites } from "./_Prerequisite.js";
|
|
4
|
+
import { src } from "./source/_PublicationRef.js";
|
|
5
|
+
export const DerivedCharacteristic = Entity(import.meta.url, {
|
|
9
6
|
name: "DerivedCharacteristic",
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
7
|
+
namePlural: "DerivedCharacteristics",
|
|
8
|
+
type: () => Object({
|
|
9
|
+
prerequisites: Optional({
|
|
10
|
+
type: IncludeIdentifier(DerivedCharacteristicPrerequisites),
|
|
11
|
+
}),
|
|
12
|
+
src,
|
|
13
|
+
translations: NestedLocaleMap(Required, "DerivedCharacteristicTranslation", Object({
|
|
14
|
+
name: Required({
|
|
15
|
+
comment: "The derived characteristic’s name.",
|
|
16
|
+
type: String({ minLength: 1 }),
|
|
17
|
+
}),
|
|
18
|
+
abbreviation: Required({
|
|
19
|
+
comment: "The derived characteristic’s abbreviation.",
|
|
20
|
+
type: String({ minLength: 1 }),
|
|
21
|
+
}),
|
|
22
|
+
calculation: Optional({
|
|
23
|
+
comment: "Possible calculation strings for the final value.",
|
|
24
|
+
type: IncludeIdentifier(CalculationTranslation),
|
|
25
|
+
}),
|
|
26
|
+
})),
|
|
27
|
+
}),
|
|
28
|
+
displayName: {},
|
|
29
|
+
});
|
|
30
|
+
const CalculationTranslation = TypeAlias(import.meta.url, {
|
|
31
|
+
name: "CalculationTranslation",
|
|
32
|
+
type: () => Object({
|
|
33
|
+
default: Required({
|
|
34
|
+
comment: "The default calculation string.",
|
|
35
|
+
type: String({ minLength: 1 }),
|
|
36
|
+
}),
|
|
37
|
+
half_primary: Optional({
|
|
38
|
+
comment: "The calculation string if only half of the primary attribute is used.",
|
|
39
|
+
type: String({ minLength: 1 }),
|
|
40
|
+
}),
|
|
41
|
+
no_primary: Optional({
|
|
42
|
+
comment: "The calculation string if no primary attribute is used.",
|
|
43
|
+
type: String({ minLength: 1 }),
|
|
44
|
+
}),
|
|
45
|
+
}),
|
|
46
|
+
});
|