@optolith/database-schema 0.73.0 → 0.74.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/gen/types.d.ts +50 -17
  3. package/lib/main.js +0 -1
  4. package/lib/types/Locale.d.ts +4 -0
  5. package/lib/types/Locale.js +4 -0
  6. package/lib/types/_Identifier.d.ts +0 -1
  7. package/lib/types/_Identifier.js +0 -2
  8. package/lib/types/equipment/item/Armor.d.ts +13 -2
  9. package/lib/types/equipment/item/Armor.js +59 -7
  10. package/lib/types/equipment/item/BandageOrRemedy.d.ts +1 -1
  11. package/lib/types/equipment/item/CeremonialItem.d.ts +1 -1
  12. package/lib/types/equipment/item/Clothes.d.ts +1 -1
  13. package/lib/types/equipment/item/Container.d.ts +1 -1
  14. package/lib/types/equipment/item/EquipmentOfBlessedOnes.d.ts +1 -1
  15. package/lib/types/equipment/item/IlluminationLightSource.d.ts +1 -1
  16. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +1 -1
  17. package/lib/types/equipment/item/Liebesspielzeug.d.ts +1 -1
  18. package/lib/types/equipment/item/LuxuryGood.d.ts +1 -1
  19. package/lib/types/equipment/item/MagicalArtifact.d.ts +1 -1
  20. package/lib/types/equipment/item/MusicalInstrument.d.ts +1 -1
  21. package/lib/types/equipment/item/OrienteeringAid.d.ts +1 -1
  22. package/lib/types/equipment/item/RopeOrChain.d.ts +1 -1
  23. package/lib/types/equipment/item/Stationery.d.ts +1 -1
  24. package/lib/types/equipment/item/ThievesTool.d.ts +1 -1
  25. package/lib/types/equipment/item/TravelGearOrTool.d.ts +1 -1
  26. package/lib/types/equipment/item/WeaponAccessory.d.ts +1 -1
  27. package/lib/types/equipment/item/_Item.d.ts +2 -2
  28. package/lib/types/index.d.ts +0 -1
  29. package/lib/types/index.js +0 -1
  30. package/package.json +1 -1
  31. package/lib/types/equipment/item/sub/ArmorType.d.ts +0 -7
  32. package/lib/types/equipment/item/sub/ArmorType.js +0 -25
package/CHANGELOG.md CHANGED
@@ -2,6 +2,15 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [0.74.0](https://github.com/Optolith/database-schema/compare/v0.73.0...v0.74.0) (2026-09-29)
6
+
7
+ ### ⚠ BREAKING CHANGES
8
+
9
+ * consolidate armor type entity into armor entity
10
+
11
+ ### Features
12
+
13
+ * consolidate armor type entity into armor entity ([10ab468](https://github.com/Optolith/database-schema/commit/10ab4689c273ca3effe56770b05c769dc3321d12))
5
14
  ## [0.73.0](https://github.com/Optolith/database-schema/compare/v0.72.1...v0.73.0) (2026-09-29)
6
15
 
7
16
  ### ⚠ BREAKING CHANGES
package/gen/types.d.ts CHANGED
@@ -21,7 +21,6 @@ export type EntityMap = {
21
21
  ArcaneDancerTradition: ArcaneDancerTradition
22
22
  ArcaneOrbEnchantment: ArcaneOrbEnchantment
23
23
  Armor: Armor
24
- ArmorType: ArmorType
25
24
  Aspect: Aspect
26
25
  AttireEnchantment: AttireEnchantment
27
26
  Attribute: Attribute
@@ -244,6 +243,7 @@ export type EnumMap = {
244
243
  ArcaneEnergyCostByLevelStyle: ArcaneEnergyCostByLevelStyle
245
244
  ArcaneTraditionPrerequisiteGroup: ArcaneTraditionPrerequisiteGroup
246
245
  ArmorComplexity: ArmorComplexity
246
+ ArmorType: ArmorType
247
247
  AttributeColor: AttributeColor
248
248
  AutomaticEntryAction: AutomaticEntryAction
249
249
  AutomaticEntryTarget: AutomaticEntryTarget
@@ -922,6 +922,8 @@ export type TypeAliasMap = {
922
922
  SpellworkPrerequisites: SpellworkPrerequisites
923
923
  SpellworksOptions: SpellworksOptions
924
924
  StandaloneCostMap: StandaloneCostMap
925
+ StandardArmorType: StandardArmorType
926
+ StandardVariantArmorType: StandardVariantArmorType
925
927
  StatePrerequisite: StatePrerequisite
926
928
  StructurePoints: StructurePoints
927
929
  StructurePointsComponent: StructurePointsComponent
@@ -941,6 +943,7 @@ export type TypeAliasMap = {
941
943
  TradeSecretSelectOptions: TradeSecretSelectOptions
942
944
  TribePrerequisites: TribePrerequisites
943
945
  ValueMap: ValueMap<unknown>
946
+ VariantArmorType: VariantArmorType
944
947
  VolumeByLevel: VolumeByLevel
945
948
  VolumeByLevelItem: VolumeByLevelItem
946
949
  VolumeDerivedFromSelection: VolumeDerivedFromSelection
@@ -2578,6 +2581,10 @@ export interface Locale {
2578
2581
  "Melee Weapons": string
2579
2582
  "Ranged Weapons": string
2580
2583
  "Armor": string
2584
+ "Standard Armor": string
2585
+ "Special Armor": string
2586
+ "Helmets": string
2587
+ "Pieces of Armor": string
2581
2588
  "Weapon Accessories": string
2582
2589
  "Clothes": string
2583
2590
  "Clothing Packages for Social Status": string
@@ -22642,9 +22649,9 @@ export interface Armor {
22642
22649
  has_additional_penalties: HasAdditionalPenalties
22643
22650
 
22644
22651
  /**
22645
- * The armor type..
22652
+ * The armor type.
22646
22653
  */
22647
- armor_type: ArmorType_ID
22654
+ armorType: ArmorType
22648
22655
 
22649
22656
  /**
22650
22657
  * Specify if armor is only available for a specific hit zone.
@@ -22751,30 +22758,56 @@ export type Encumbrance = number
22751
22758
  */
22752
22759
  export type HasAdditionalPenalties = boolean
22753
22760
 
22754
- export interface ArmorType {
22761
+ /**
22762
+ * The armor type.
22763
+ */
22764
+ export type ArmorType =
22765
+ | {
22766
+ kind: "Standard"
22767
+ Standard: StandardArmorType
22768
+ }
22769
+ | {
22770
+ kind: "StandardVariant"
22771
+ StandardVariant: StandardVariantArmorType
22772
+ }
22773
+ | {
22774
+ kind: "Variant"
22775
+ Variant: VariantArmorType
22776
+ }
22777
+
22778
+ /**
22779
+ * A standard armor.
22780
+ */
22781
+ export interface StandardArmorType {
22755
22782
  /**
22756
22783
  * An armor type can have a *sturdiness rating*. The higher the rating, the more durable the armor. Rolling higher than this rating during a sturdiness check means the armor receives one level of the new condition *Wear*.
22757
22784
  */
22758
- sturdiness_rating?: number
22785
+ sturdinessRating: number
22786
+ }
22759
22787
 
22788
+ /**
22789
+ * The armor is a variant of a standard armor but still defines its own sturdiness rating and thus its own armor type.
22790
+ */
22791
+ export interface StandardVariantArmorType {
22760
22792
  /**
22761
- * All translations for the entry, identified by IETF language tag (BCP47).
22793
+ * The standard armor this armor is a variant of.
22762
22794
  */
22763
- translations: {
22764
- [localeId: string]: ArmorTypeTranslation
22765
- }
22795
+ variantOf: Armor_ID
22796
+
22797
+ /**
22798
+ * An armor type can have a *sturdiness rating*. The higher the rating, the more durable the armor. Rolling higher than this rating during a sturdiness check means the armor receives one level of the new condition *Wear*.
22799
+ */
22800
+ sturdinessRating: number
22766
22801
  }
22767
22802
 
22768
22803
  /**
22769
- * The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
22804
+ * The armor is a variant of a standard armor but also defines its own .
22770
22805
  */
22771
- export type ArmorType_ID = string
22772
-
22773
- export interface ArmorTypeTranslation {
22806
+ export interface VariantArmorType {
22774
22807
  /**
22775
- * The armor type’s name.
22808
+ * The standard armor this armor is a variant of.
22776
22809
  */
22777
- name: string
22810
+ variantOf: Armor_ID
22778
22811
  }
22779
22812
 
22780
22813
  /**
@@ -22956,9 +22989,9 @@ export interface SecondaryArmor {
22956
22989
  has_additional_penalties: HasAdditionalPenalties
22957
22990
 
22958
22991
  /**
22959
- * The armor type..
22992
+ * The standard armor this armor is a variant of.
22960
22993
  */
22961
- armor_type: ArmorType_ID
22994
+ variantOf: Armor_ID
22962
22995
 
22963
22996
  /**
22964
22997
  * Specify if armor is only available for a specific hit zone.
package/lib/main.js CHANGED
@@ -21,7 +21,6 @@ export const schema = new Schema([
21
21
  Types.ArcaneDancerTradition,
22
22
  Types.ArcaneOrbEnchantment,
23
23
  Types.Armor,
24
- Types.ArmorType,
25
24
  Types.Aspect,
26
25
  Types.AttireEnchantment,
27
26
  Types.Attribute,
@@ -1496,6 +1496,10 @@ export declare const Locale: DB.Entity<"Locale", {
1496
1496
  "Melee Weapons": null;
1497
1497
  "Ranged Weapons": null;
1498
1498
  Armor: null;
1499
+ "Standard Armor": null;
1500
+ "Special Armor": null;
1501
+ Helmets: null;
1502
+ "Pieces of Armor": null;
1499
1503
  "Weapon Accessories": null;
1500
1504
  Clothes: null;
1501
1505
  "Clothing Packages for Social Status": null;
@@ -1538,6 +1538,10 @@ export const Locale = DB.Entity(import.meta.url, {
1538
1538
  "Ranged Weapons": null,
1539
1539
  // "Ammunition": null,
1540
1540
  "Armor": null,
1541
+ "Standard Armor": null,
1542
+ "Special Armor": null,
1543
+ "Helmets": null,
1544
+ "Pieces of Armor": null,
1541
1545
  "Weapon Accessories": null,
1542
1546
  "Clothes": null,
1543
1547
  "Clothing Packages for Social Status": null,
@@ -18,7 +18,6 @@ export declare const ArcaneBardTraditionIdentifier: () => R;
18
18
  export declare const ArcaneDancerTraditionIdentifier: () => R;
19
19
  export declare const ArcaneOrbEnchantmentIdentifier: () => R;
20
20
  export declare const ArmorIdentifier: () => R;
21
- export declare const ArmorTypeIdentifier: () => R;
22
21
  export declare const AspectIdentifier: () => R;
23
22
  export declare const AttireEnchantmentIdentifier: () => R;
24
23
  export declare const AttributeIdentifier: () => R;
@@ -48,7 +48,6 @@ import { Plant } from "./equipment/item/Plant.js";
48
48
  import { Poison } from "./equipment/item/Poison.js";
49
49
  import { RopeOrChain } from "./equipment/item/RopeOrChain.js";
50
50
  import { Stationery } from "./equipment/item/Stationery.js";
51
- import { ArmorType } from "./equipment/item/sub/ArmorType.js";
52
51
  import { Biome } from "./equipment/item/sub/Biome.js";
53
52
  import { BotanicRegion } from "./equipment/item/sub/BotanicRegion.js";
54
53
  import { Reach } from "./equipment/item/sub/Reach.js";
@@ -183,7 +182,6 @@ export const ArcaneBardTraditionIdentifier = () => R(ArcaneBardTradition);
183
182
  export const ArcaneDancerTraditionIdentifier = () => R(ArcaneDancerTradition);
184
183
  export const ArcaneOrbEnchantmentIdentifier = () => R(ArcaneOrbEnchantment);
185
184
  export const ArmorIdentifier = () => R(Armor);
186
- export const ArmorTypeIdentifier = () => R(ArmorType);
187
185
  export const AspectIdentifier = () => R(Aspect);
188
186
  export const AttireEnchantmentIdentifier = () => R(AttireEnchantment);
189
187
  export const AttributeIdentifier = () => R(Attribute);
@@ -71,7 +71,18 @@ export declare const Armor: DB.Entity<"Armor", {
71
71
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
72
72
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
73
73
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
74
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
74
+ armorType: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ArmorType", {
75
+ Standard: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"StandardArmorType", DB.Object<{
76
+ sturdinessRating: DB.MemberDecl<DB.Integer, true>;
77
+ }>, []>>>;
78
+ StandardVariant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"StandardVariantArmorType", DB.Object<{
79
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
80
+ sturdinessRating: DB.MemberDecl<DB.Integer, true>;
81
+ }>, []>>>;
82
+ Variant: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"VariantArmorType", DB.Object<{
83
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
84
+ }>, []>>>;
85
+ }, []>>, true>;
75
86
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
76
87
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
77
88
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -213,7 +224,7 @@ export declare const SecondaryArmor: DB.TypeAlias<"SecondaryArmor", DB.Object<{
213
224
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
214
225
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
215
226
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
216
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
227
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
217
228
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
218
229
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
219
230
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -1,5 +1,6 @@
1
+ import { isNotNullish } from "@elyukai/utils/nullable";
1
2
  import * as DB from "tsondb/schema/dsl";
2
- import { ArmorIdentifier, ArmorTypeIdentifier } from "../../_Identifier.js";
3
+ import { ArmorIdentifier } from "../../_Identifier.js";
3
4
  import { NestedTranslationMap } from "../../Locale.js";
4
5
  import { Errata } from "../../source/_Erratum.js";
5
6
  import { src } from "../../source/_PublicationRef.js";
@@ -32,9 +33,9 @@ export const Armor = DB.Entity(import.meta.url, {
32
33
  comment: "Does the armor have additional penalties (MOV -1, INI -1)?",
33
34
  type: DB.IncludeIdentifier(HasAdditionalPenalties),
34
35
  }),
35
- armor_type: DB.Required({
36
- comment: "The armor type..",
37
- type: ArmorTypeIdentifier(),
36
+ armorType: DB.Required({
37
+ comment: "The armor type.",
38
+ type: DB.IncludeIdentifier(ArmorType),
38
39
  }),
39
40
  hit_zone: DB.Optional({
40
41
  comment: "Specify if armor is only available for a specific hit zone.",
@@ -91,6 +92,56 @@ export const Armor = DB.Entity(import.meta.url, {
91
92
  },
92
93
  ],
93
94
  });
95
+ const ArmorType = DB.Enum(import.meta.url, {
96
+ name: "ArmorType",
97
+ comment: "The armor type.",
98
+ values: () => ({
99
+ Standard: DB.EnumCase({ type: DB.IncludeIdentifier(StandardArmorType) }),
100
+ StandardVariant: DB.EnumCase({ type: DB.IncludeIdentifier(StandardVariantArmorType) }),
101
+ Variant: DB.EnumCase({ type: DB.IncludeIdentifier(VariantArmorType) }),
102
+ }),
103
+ });
104
+ const StandardArmorType = DB.TypeAlias(import.meta.url, {
105
+ name: "StandardArmorType",
106
+ comment: "A standard armor.",
107
+ type: () => DB.Object({
108
+ sturdinessRating: DB.Required({
109
+ comment: "An armor type can have a *sturdiness rating*. The higher the rating, the more durable the armor. Rolling higher than this rating during a sturdiness check means the armor receives one level of the new condition *Wear*.",
110
+ type: DB.Integer({ minimum: 1, maximum: 20 }),
111
+ }),
112
+ }),
113
+ });
114
+ const validateArmorTypeReference = (deps) => [
115
+ deps.getInstanceById("Armor", deps.instanceContent.variantOf)?.armorType.kind !== "Standard"
116
+ ? "The armor is a variant of a standard armor, but the referenced armor is not a standard armor."
117
+ : undefined,
118
+ ].filter(isNotNullish);
119
+ const StandardVariantArmorType = DB.TypeAlias(import.meta.url, {
120
+ name: "StandardVariantArmorType",
121
+ comment: "The armor is a variant of a standard armor but still defines its own sturdiness rating and thus its own armor type.",
122
+ type: () => DB.Object({
123
+ variantOf: DB.Required({
124
+ comment: "The standard armor this armor is a variant of.",
125
+ type: ArmorIdentifier(),
126
+ }),
127
+ sturdinessRating: DB.Required({
128
+ comment: "An armor type can have a *sturdiness rating*. The higher the rating, the more durable the armor. Rolling higher than this rating during a sturdiness check means the armor receives one level of the new condition *Wear*.",
129
+ type: DB.Integer({ minimum: 1, maximum: 20 }),
130
+ }),
131
+ }),
132
+ customConstraints: validateArmorTypeReference,
133
+ });
134
+ const VariantArmorType = DB.TypeAlias(import.meta.url, {
135
+ name: "VariantArmorType",
136
+ comment: "The armor is a variant of a standard armor but also defines its own .",
137
+ type: () => DB.Object({
138
+ variantOf: DB.Required({
139
+ comment: "The standard armor this armor is a variant of.",
140
+ type: ArmorIdentifier(),
141
+ }),
142
+ }),
143
+ customConstraints: validateArmorTypeReference,
144
+ });
94
145
  export const SecondaryArmor = DB.TypeAlias(import.meta.url, {
95
146
  name: "SecondaryArmor",
96
147
  type: () => DB.Object({
@@ -106,9 +157,9 @@ export const SecondaryArmor = DB.TypeAlias(import.meta.url, {
106
157
  comment: "Does the armor have additional penalties (MOV -1, INI -1)?",
107
158
  type: DB.IncludeIdentifier(HasAdditionalPenalties),
108
159
  }),
109
- armor_type: DB.Required({
110
- comment: "The armor type..",
111
- type: ArmorTypeIdentifier(),
160
+ variantOf: DB.Required({
161
+ comment: "The standard armor this armor is a variant of.",
162
+ type: ArmorIdentifier(),
112
163
  }),
113
164
  hit_zone: DB.Optional({
114
165
  comment: "Specify if armor is only available for a specific hit zone.",
@@ -129,6 +180,7 @@ export const SecondaryArmor = DB.TypeAlias(import.meta.url, {
129
180
  }),
130
181
  }, { minProperties: 1 })),
131
182
  }),
183
+ customConstraints: validateArmorTypeReference,
132
184
  });
133
185
  const ArmorComplexity = DB.Enum(import.meta.url, {
134
186
  name: "ArmorComplexity",
@@ -148,7 +148,7 @@ export declare const BandageOrRemedy: DB.Entity<"BandageOrRemedy", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -149,7 +149,7 @@ export declare const CeremonialItem: DB.Entity<"CeremonialItem", {
149
149
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
150
150
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
151
151
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
152
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
153
153
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
154
154
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
155
155
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const Clothes: DB.Entity<"Clothes", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const Container: DB.Entity<"Container", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -121,7 +121,7 @@ export declare const EquipmentOfBlessedOnes: DB.Entity<"EquipmentOfBlessedOnes",
121
121
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
122
122
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
123
123
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
124
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
124
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
125
125
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
126
126
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
127
127
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -157,7 +157,7 @@ export declare const IlluminationLightSource: DB.Entity<"IlluminationLightSource
157
157
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
158
158
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
159
159
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
160
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
160
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
161
161
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
162
162
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
163
163
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const IlluminationRefillOrSupply: DB.Entity<"IlluminationRefillOr
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const Liebesspielzeug: DB.Entity<"Liebesspielzeug", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const LuxuryGood: DB.Entity<"LuxuryGood", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const MagicalArtifact: DB.Entity<"MagicalArtifact", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const MusicalInstrument: DB.Entity<"MusicalInstrument", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -147,7 +147,7 @@ export declare const OrienteeringAid: import("tsondb/schema/dsl").Entity<string,
147
147
  protection: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Protection", import("tsondb/schema/dsl").Integer, []>>, true>;
148
148
  encumbrance: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Encumbrance", import("tsondb/schema/dsl").Integer, []>>, true>;
149
149
  has_additional_penalties: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HasAdditionalPenalties", import("tsondb/schema/dsl").Boolean, []>>, true>;
150
- armor_type: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
150
+ variantOf: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
151
151
  hit_zone: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").Enum<"HitZone", {
152
152
  Head: import("tsondb/schema/dsl").EnumCase<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZone", import("tsondb/schema/dsl").Object<{
153
153
  combination_possibilities: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZoneCombinationPossibilities", import("tsondb/schema/dsl").Object<{
@@ -147,7 +147,7 @@ export declare const RopeOrChain: import("tsondb/schema/dsl").Entity<string, {
147
147
  protection: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Protection", import("tsondb/schema/dsl").Integer, []>>, true>;
148
148
  encumbrance: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Encumbrance", import("tsondb/schema/dsl").Integer, []>>, true>;
149
149
  has_additional_penalties: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HasAdditionalPenalties", import("tsondb/schema/dsl").Boolean, []>>, true>;
150
- armor_type: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
150
+ variantOf: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
151
151
  hit_zone: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").Enum<"HitZone", {
152
152
  Head: import("tsondb/schema/dsl").EnumCase<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZone", import("tsondb/schema/dsl").Object<{
153
153
  combination_possibilities: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZoneCombinationPossibilities", import("tsondb/schema/dsl").Object<{
@@ -147,7 +147,7 @@ export declare const Stationery: import("tsondb/schema/dsl").Entity<string, {
147
147
  protection: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Protection", import("tsondb/schema/dsl").Integer, []>>, true>;
148
148
  encumbrance: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Encumbrance", import("tsondb/schema/dsl").Integer, []>>, true>;
149
149
  has_additional_penalties: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HasAdditionalPenalties", import("tsondb/schema/dsl").Boolean, []>>, true>;
150
- armor_type: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
150
+ variantOf: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
151
151
  hit_zone: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").Enum<"HitZone", {
152
152
  Head: import("tsondb/schema/dsl").EnumCase<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZone", import("tsondb/schema/dsl").Object<{
153
153
  combination_possibilities: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZoneCombinationPossibilities", import("tsondb/schema/dsl").Object<{
@@ -147,7 +147,7 @@ export declare const ThievesTool: import("tsondb/schema/dsl").Entity<string, {
147
147
  protection: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Protection", import("tsondb/schema/dsl").Integer, []>>, true>;
148
148
  encumbrance: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"Encumbrance", import("tsondb/schema/dsl").Integer, []>>, true>;
149
149
  has_additional_penalties: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HasAdditionalPenalties", import("tsondb/schema/dsl").Boolean, []>>, true>;
150
- armor_type: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
150
+ variantOf: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").ReferenceIdentifier, true>;
151
151
  hit_zone: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").Enum<"HitZone", {
152
152
  Head: import("tsondb/schema/dsl").EnumCase<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZone", import("tsondb/schema/dsl").Object<{
153
153
  combination_possibilities: import("tsondb/schema/dsl").MemberDecl<import("tsondb/schema/dsl").IncludeIdentifier<[], import("tsondb/schema/dsl").TypeAlias<"HeadHitZoneCombinationPossibilities", import("tsondb/schema/dsl").Object<{
@@ -148,7 +148,7 @@ export declare const TravelGearOrTool: DB.Entity<"TravelGearOrTool", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const WeaponAccessory: DB.Entity<"WeaponAccessory", {
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -148,7 +148,7 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
148
148
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
149
149
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
150
150
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
151
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
151
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
152
152
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
153
153
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
154
154
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -328,7 +328,7 @@ export declare const CombatUse: DB.Enum<"CombatUse", {
328
328
  protection: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Protection", DB.Integer, []>>, true>;
329
329
  encumbrance: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Encumbrance", DB.Integer, []>>, true>;
330
330
  has_additional_penalties: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HasAdditionalPenalties", DB.Boolean, []>>, true>;
331
- armor_type: DB.MemberDecl<DB.ReferenceIdentifier, true>;
331
+ variantOf: DB.MemberDecl<DB.ReferenceIdentifier, true>;
332
332
  hit_zone: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"HitZone", {
333
333
  Head: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZone", DB.Object<{
334
334
  combination_possibilities: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"HeadHitZoneCombinationPossibilities", DB.Object<{
@@ -46,7 +46,6 @@ export { Plant } from "./equipment/item/Plant.js";
46
46
  export { Poison } from "./equipment/item/Poison.js";
47
47
  export { RopeOrChain } from "./equipment/item/RopeOrChain.js";
48
48
  export { Stationery } from "./equipment/item/Stationery.js";
49
- export { ArmorType } from "./equipment/item/sub/ArmorType.js";
50
49
  export { Biome } from "./equipment/item/sub/Biome.js";
51
50
  export { BotanicRegion } from "./equipment/item/sub/BotanicRegion.js";
52
51
  export { Reach } from "./equipment/item/sub/Reach.js";
@@ -46,7 +46,6 @@ export { Plant } from "./equipment/item/Plant.js";
46
46
  export { Poison } from "./equipment/item/Poison.js";
47
47
  export { RopeOrChain } from "./equipment/item/RopeOrChain.js";
48
48
  export { Stationery } from "./equipment/item/Stationery.js";
49
- export { ArmorType } from "./equipment/item/sub/ArmorType.js";
50
49
  export { Biome } from "./equipment/item/sub/Biome.js";
51
50
  export { BotanicRegion } from "./equipment/item/sub/BotanicRegion.js";
52
51
  export { Reach } from "./equipment/item/sub/Reach.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optolith/database-schema",
3
- "version": "0.73.0",
3
+ "version": "0.74.0",
4
4
  "description": "Definitions and utilities for the flat-file database of Optolith, a character creation tool for the Pen and Paper RPG “The Dark Eye 5”, and its external integrations into other software.",
5
5
  "keywords": [
6
6
  "tde",
@@ -1,7 +0,0 @@
1
- import * as DB from "tsondb/schema/dsl";
2
- export declare const ArmorType: DB.Entity<"ArmorType", {
3
- sturdiness_rating: DB.MemberDecl<DB.Integer, false>;
4
- translations: DB.MemberDecl<DB.NestedEntityMap<"ArmorTypeTranslation", {
5
- name: DB.MemberDecl<DB.String, true>;
6
- }>, true>;
7
- }, undefined>;
@@ -1,25 +0,0 @@
1
- import * as DB from "tsondb/schema/dsl";
2
- import { NestedTranslationMap } from "../../../Locale.js";
3
- export const ArmorType = DB.Entity(import.meta.url, {
4
- name: "ArmorType",
5
- namePlural: "ArmorTypes",
6
- type: () => DB.Object({
7
- sturdiness_rating: DB.Optional({
8
- comment: "An armor type can have a *sturdiness rating*. The higher the rating, the more durable the armor. Rolling higher than this rating during a sturdiness check means the armor receives one level of the new condition *Wear*.",
9
- type: DB.Integer({ minimum: 1, maximum: 20 }),
10
- }),
11
- translations: NestedTranslationMap(DB.Required, "ArmorType", DB.Object({
12
- name: DB.Required({
13
- comment: "The armor type’s name.",
14
- type: DB.String({ minLength: 1 }),
15
- }),
16
- })),
17
- }),
18
- instanceDisplayName: {},
19
- uniqueConstraints: [
20
- {
21
- entityMapKeyPath: "translations",
22
- keyPathInEntityMap: "name",
23
- },
24
- ],
25
- });