@optolith/database-schema 0.77.0 → 0.77.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 +7 -0
- package/gen/types.d.ts +243 -0
- package/lib/main.js +2 -0
- package/lib/types/Attribute.js +1 -3
- package/lib/types/DerivedCharacteristic.js +1 -3
- package/lib/types/SkillGroup.js +1 -3
- package/lib/types/SocialStatus.js +1 -0
- package/lib/types/Talisman.js +1 -1
- package/lib/types/_Identifier.d.ts +2 -0
- package/lib/types/_Identifier.js +4 -0
- package/lib/types/equipment/item/BandageOrRemedy.js +1 -1
- package/lib/types/equipment/item/CeremonialItem.js +1 -1
- package/lib/types/equipment/item/Clothes.js +1 -1
- package/lib/types/equipment/item/Container.js +1 -1
- package/lib/types/equipment/item/EquipmentCategory.d.ts +121 -0
- package/lib/types/equipment/item/EquipmentCategory.js +131 -0
- package/lib/types/equipment/item/EquipmentOfBlessedOnes.js +1 -1
- package/lib/types/equipment/item/IlluminationLightSource.js +1 -1
- package/lib/types/equipment/item/IlluminationRefillOrSupply.js +1 -1
- package/lib/types/equipment/item/Item.d.ts +287 -0
- package/lib/types/equipment/item/Item.js +167 -0
- package/lib/types/equipment/item/Liebesspielzeug.js +1 -1
- package/lib/types/equipment/item/LuxuryGood.js +1 -1
- package/lib/types/equipment/item/MagicalArtifact.js +1 -1
- package/lib/types/equipment/item/MusicalInstrument.js +1 -1
- package/lib/types/equipment/item/TravelGearOrTool.js +1 -1
- package/lib/types/equipment/item/Weapon.js +1 -1
- package/lib/types/equipment/item/WeaponAccessory.js +1 -1
- package/lib/types/equipment/item/_Item.js +1 -1
- package/lib/types/equipment/item/_Weapon.d.ts +2 -2
- package/lib/types/equipment/item/_Weapon.js +7 -4
- package/lib/types/equipment/item/sub/Reach.js +1 -3
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.js +2 -0
- package/package.json +9 -9
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,13 @@
|
|
|
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.77.1](https://github.com/Optolith/database-schema/compare/v0.77.0...v0.77.1) (2026-10-03)
|
|
6
|
+
|
|
7
|
+
### Features
|
|
8
|
+
|
|
9
|
+
* generic item and equipment category entities ([c154d95](https://github.com/Optolith/database-schema/commit/c154d955d161b02d8d43d13dad8a6b881a333e92))
|
|
10
|
+
* mark entities sortable by index value ([5c8dd28](https://github.com/Optolith/database-schema/commit/5c8dd28937e9176b431cb8e693e816e06fcfb8d5))
|
|
11
|
+
|
|
5
12
|
## [0.77.0](https://github.com/Optolith/database-schema/compare/v0.76.0...v0.77.0) (2026-10-01)
|
|
6
13
|
|
|
7
14
|
### ⚠ BREAKING CHANGES
|
package/gen/types.d.ts
CHANGED
|
@@ -65,6 +65,7 @@ export type EntityMap = {
|
|
|
65
65
|
Elixir: Elixir
|
|
66
66
|
ElvenMagicalSong: ElvenMagicalSong
|
|
67
67
|
Enhancement: Enhancement
|
|
68
|
+
EquipmentCategory: EquipmentCategory
|
|
68
69
|
EquipmentOfBlessedOnes: EquipmentOfBlessedOnes
|
|
69
70
|
EquipmentPackage: EquipmentPackage
|
|
70
71
|
ExperienceLevel: ExperienceLevel
|
|
@@ -91,6 +92,7 @@ export type EntityMap = {
|
|
|
91
92
|
IlluminationRefillOrSupply: IlluminationRefillOrSupply
|
|
92
93
|
Influence: Influence
|
|
93
94
|
InstrumentEnchantment: InstrumentEnchantment
|
|
95
|
+
Item: Item
|
|
94
96
|
JesterTrick: JesterTrick
|
|
95
97
|
Jewelry: Jewelry
|
|
96
98
|
KarmaSpecialAbility: KarmaSpecialAbility
|
|
@@ -317,6 +319,7 @@ export type EnumMap = {
|
|
|
317
319
|
EncumbranceInfluence: EncumbranceInfluence
|
|
318
320
|
EnhancementAdventurePoints: EnhancementAdventurePoints
|
|
319
321
|
EnhancementPrerequisiteGroup: EnhancementPrerequisiteGroup
|
|
322
|
+
EquipmentCategoryType: EquipmentCategoryType
|
|
320
323
|
EquipmentIdentifier: EquipmentIdentifier
|
|
321
324
|
ExpressionBasedParameterExpressionValue: ExpressionBasedParameterExpressionValue
|
|
322
325
|
ExpressionBasedPoisonTimeExpressionValue: ExpressionBasedPoisonTimeExpressionValue
|
|
@@ -452,6 +455,7 @@ export type EnumMap = {
|
|
|
452
455
|
SlowSkillCastingTimeUnit: SlowSkillCastingTimeUnit
|
|
453
456
|
SpecialAbilityGroup: SpecialAbilityGroup
|
|
454
457
|
SpecialAbilityIdentifier: SpecialAbilityIdentifier
|
|
458
|
+
SpecialEquipmentCategoryEntity: SpecialEquipmentCategoryEntity
|
|
455
459
|
SpecificAffectedTargetCategoryIdentifier: SpecificAffectedTargetCategoryIdentifier
|
|
456
460
|
SpecificFromSkillSelectOptionCategoryCategoryOperation: SpecificFromSkillSelectOptionCategoryCategoryOperation
|
|
457
461
|
SpellFilter: SpellFilter
|
|
@@ -470,6 +474,7 @@ export type EnumMap = {
|
|
|
470
474
|
TradeSecretSelectOptionCategory: TradeSecretSelectOptionCategory
|
|
471
475
|
TribePrerequisiteGroup: TribePrerequisiteGroup
|
|
472
476
|
ValueMapStyle: ValueMapStyle
|
|
477
|
+
ValueRule: ValueRule
|
|
473
478
|
VariantOptionAction: VariantOptionAction<unknown>
|
|
474
479
|
VariantSpecialAbilityAction: VariantSpecialAbilityAction
|
|
475
480
|
Volume: Volume
|
|
@@ -503,6 +508,7 @@ export type TypeAliasMap = {
|
|
|
503
508
|
AllApplicableCloseCombatTechniques: AllApplicableCloseCombatTechniques
|
|
504
509
|
AllApplicableCombatTechniques: AllApplicableCombatTechniques
|
|
505
510
|
AllApplicableRangedCombatTechniques: AllApplicableRangedCombatTechniques
|
|
511
|
+
AllowedCombatValues: AllowedCombatValues
|
|
506
512
|
AlternativeName: AlternativeName
|
|
507
513
|
AnimalFeed: AnimalFeed
|
|
508
514
|
AnimalPowers: AnimalPowers
|
|
@@ -596,6 +602,7 @@ export type TypeAliasMap = {
|
|
|
596
602
|
CustomDurationUnit: CustomDurationUnit
|
|
597
603
|
CustomMagicalRuneSuboption: CustomMagicalRuneSuboption
|
|
598
604
|
DaggerRitualArcaneEnergyCost: DaggerRitualArcaneEnergyCost
|
|
605
|
+
DefaultEquipmentCategoryTypeRules: DefaultEquipmentCategoryTypeRules
|
|
599
606
|
DefaultPrimaryAttributeDamageThreshold: DefaultPrimaryAttributeDamageThreshold
|
|
600
607
|
DefaultRangedDamage: DefaultRangedDamage
|
|
601
608
|
DefiniteBookCostVariant: DefiniteBookCostVariant
|
|
@@ -24228,6 +24235,126 @@ export interface ElixirEffectForEachQualityLevel {
|
|
|
24228
24235
|
qualityLevels: [string, string, string, string, string, string]
|
|
24229
24236
|
}
|
|
24230
24237
|
|
|
24238
|
+
export interface EquipmentCategory {
|
|
24239
|
+
/**
|
|
24240
|
+
* The position of the category in the list. This has to be a unique value.
|
|
24241
|
+
*/
|
|
24242
|
+
position: number
|
|
24243
|
+
|
|
24244
|
+
/**
|
|
24245
|
+
* The type of the equipment category.
|
|
24246
|
+
*/
|
|
24247
|
+
type: EquipmentCategoryType
|
|
24248
|
+
|
|
24249
|
+
/**
|
|
24250
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
24251
|
+
*/
|
|
24252
|
+
translations: {
|
|
24253
|
+
[localeId: string]: EquipmentCategoryTranslation
|
|
24254
|
+
}
|
|
24255
|
+
}
|
|
24256
|
+
|
|
24257
|
+
/**
|
|
24258
|
+
* The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
|
|
24259
|
+
*/
|
|
24260
|
+
export type EquipmentCategory_ID = string
|
|
24261
|
+
|
|
24262
|
+
export interface EquipmentCategoryTranslation {
|
|
24263
|
+
/**
|
|
24264
|
+
* The equipment category’s name.
|
|
24265
|
+
*/
|
|
24266
|
+
name: string
|
|
24267
|
+
}
|
|
24268
|
+
|
|
24269
|
+
export type EquipmentCategoryType =
|
|
24270
|
+
| {
|
|
24271
|
+
kind: "Default"
|
|
24272
|
+
Default: DefaultEquipmentCategoryTypeRules
|
|
24273
|
+
}
|
|
24274
|
+
| {
|
|
24275
|
+
kind: "Special"
|
|
24276
|
+
Special: SpecialEquipmentCategoryEntity
|
|
24277
|
+
}
|
|
24278
|
+
|
|
24279
|
+
export interface DefaultEquipmentCategoryTypeRules {
|
|
24280
|
+
/**
|
|
24281
|
+
* The combat values that are allowed for this category. If any combat value is allowed and used, advantages, disadvantages and known item specifics are also allowed to be defined for the item.
|
|
24282
|
+
*/
|
|
24283
|
+
combatValues: AllowedCombatValues
|
|
24284
|
+
|
|
24285
|
+
/**
|
|
24286
|
+
* Presence of restrictions to certain groups for items in this category.
|
|
24287
|
+
*/
|
|
24288
|
+
restrictedTo: ValueRule
|
|
24289
|
+
|
|
24290
|
+
/**
|
|
24291
|
+
* Presence of structure points to certain groups for items in this category.
|
|
24292
|
+
*/
|
|
24293
|
+
structurePoints: ValueRule
|
|
24294
|
+
|
|
24295
|
+
/**
|
|
24296
|
+
* Presence of weight to certain groups for items in this category.
|
|
24297
|
+
*/
|
|
24298
|
+
weight: ValueRule
|
|
24299
|
+
|
|
24300
|
+
/**
|
|
24301
|
+
* Presence of complexity to certain groups for items in this category.
|
|
24302
|
+
*/
|
|
24303
|
+
complexity: ValueRule
|
|
24304
|
+
}
|
|
24305
|
+
|
|
24306
|
+
/**
|
|
24307
|
+
* The combat values that are allowed for this category. If any combat value is allowed and used, advantages, disadvantages and known item specifics are also allowed to be defined for the item.
|
|
24308
|
+
*/
|
|
24309
|
+
export interface AllowedCombatValues {
|
|
24310
|
+
/**
|
|
24311
|
+
* Is the item allowed to be used as a weapon?
|
|
24312
|
+
*/
|
|
24313
|
+
isWeaponAllowed: boolean
|
|
24314
|
+
|
|
24315
|
+
/**
|
|
24316
|
+
* Is the item allowed to be used as an armor?
|
|
24317
|
+
*/
|
|
24318
|
+
isArmorAllowed: boolean
|
|
24319
|
+
}
|
|
24320
|
+
|
|
24321
|
+
/**
|
|
24322
|
+
* Defines if an instance MUST/CAN/MUST NOT define a value for this parameter. If multiple rules apply to the same parameter, the order of precedence is Required > Optional > Prohibited.
|
|
24323
|
+
*/
|
|
24324
|
+
export type ValueRule =
|
|
24325
|
+
| {
|
|
24326
|
+
kind: "Required"
|
|
24327
|
+
}
|
|
24328
|
+
| {
|
|
24329
|
+
kind: "Optional"
|
|
24330
|
+
}
|
|
24331
|
+
| {
|
|
24332
|
+
kind: "Prohibited"
|
|
24333
|
+
}
|
|
24334
|
+
|
|
24335
|
+
export type SpecialEquipmentCategoryEntity =
|
|
24336
|
+
| {
|
|
24337
|
+
kind: "AnimalCare"
|
|
24338
|
+
}
|
|
24339
|
+
| {
|
|
24340
|
+
kind: "Book"
|
|
24341
|
+
}
|
|
24342
|
+
| {
|
|
24343
|
+
kind: "Elixir"
|
|
24344
|
+
}
|
|
24345
|
+
| {
|
|
24346
|
+
kind: "GemOrPreciousStone"
|
|
24347
|
+
}
|
|
24348
|
+
| {
|
|
24349
|
+
kind: "Newspaper"
|
|
24350
|
+
}
|
|
24351
|
+
| {
|
|
24352
|
+
kind: "Poison"
|
|
24353
|
+
}
|
|
24354
|
+
| {
|
|
24355
|
+
kind: "WorkingSupernaturalCreature"
|
|
24356
|
+
}
|
|
24357
|
+
|
|
24231
24358
|
export interface EquipmentOfBlessedOnes {
|
|
24232
24359
|
/**
|
|
24233
24360
|
* The cost in silverthalers.
|
|
@@ -26132,6 +26259,122 @@ export interface HomunculusTypeTranslation {
|
|
|
26132
26259
|
name: string
|
|
26133
26260
|
}
|
|
26134
26261
|
|
|
26262
|
+
export interface Item {
|
|
26263
|
+
/**
|
|
26264
|
+
* The categories this item belongs to.
|
|
26265
|
+
*/
|
|
26266
|
+
categories: EquipmentCategory_ID[]
|
|
26267
|
+
|
|
26268
|
+
/**
|
|
26269
|
+
* The cost in silverthalers.
|
|
26270
|
+
*/
|
|
26271
|
+
cost: Cost
|
|
26272
|
+
|
|
26273
|
+
/**
|
|
26274
|
+
* The weight in kg.
|
|
26275
|
+
*/
|
|
26276
|
+
weight: Weight
|
|
26277
|
+
|
|
26278
|
+
/**
|
|
26279
|
+
* The complexity of crafting the item.
|
|
26280
|
+
*/
|
|
26281
|
+
complexity?: Complexity
|
|
26282
|
+
|
|
26283
|
+
/**
|
|
26284
|
+
* The structure points of the item. Use an array if the item consists of multiple components that have individual structure points.
|
|
26285
|
+
*/
|
|
26286
|
+
structurePoints: StructurePoints
|
|
26287
|
+
|
|
26288
|
+
/**
|
|
26289
|
+
* A list of stat blocks for each close combat technique this weapon can be used with.
|
|
26290
|
+
*/
|
|
26291
|
+
meleeUses?: {
|
|
26292
|
+
[closeCombatTechniqueId: string]: MeleeWeaponUse2
|
|
26293
|
+
}
|
|
26294
|
+
|
|
26295
|
+
/**
|
|
26296
|
+
* A list of stat blocks for each ranged combat technique this weapon can be used with.
|
|
26297
|
+
*/
|
|
26298
|
+
rangedUses?: {
|
|
26299
|
+
[rangedCombatTechniqueId: string]: RangedWeaponUse2
|
|
26300
|
+
}
|
|
26301
|
+
|
|
26302
|
+
/**
|
|
26303
|
+
* Stats for this item being used as an armor.
|
|
26304
|
+
*/
|
|
26305
|
+
armorUse?: SecondaryArmor
|
|
26306
|
+
|
|
26307
|
+
/**
|
|
26308
|
+
* Define if during character creation this weapon can only be bought by a specific subset of characters.
|
|
26309
|
+
*/
|
|
26310
|
+
restrictedTo?: RestrictedTo
|
|
26311
|
+
|
|
26312
|
+
/**
|
|
26313
|
+
* The weapon is a known item, which implies some additional values.
|
|
26314
|
+
*/
|
|
26315
|
+
knownItemSpecifics?: KnownItemSpecifics
|
|
26316
|
+
|
|
26317
|
+
/**
|
|
26318
|
+
* References to where in which publications this entry has been defined. Entries may also be added or removed in later printings.
|
|
26319
|
+
*/
|
|
26320
|
+
src: PublicationRefs
|
|
26321
|
+
|
|
26322
|
+
/**
|
|
26323
|
+
* All translations for the entry, identified by IETF language tag (BCP47).
|
|
26324
|
+
*/
|
|
26325
|
+
translations: {
|
|
26326
|
+
[localeId: string]: ItemTranslation
|
|
26327
|
+
}
|
|
26328
|
+
}
|
|
26329
|
+
|
|
26330
|
+
/**
|
|
26331
|
+
* The entity’s identifier. A UUID or a locale code if it is registered as the locale entity.
|
|
26332
|
+
*/
|
|
26333
|
+
export type Item_ID = string
|
|
26334
|
+
|
|
26335
|
+
export type MeleeWeaponUse2 = MeleeWeapon
|
|
26336
|
+
|
|
26337
|
+
export type RangedWeaponUse2 = RangedWeapon
|
|
26338
|
+
|
|
26339
|
+
export interface ItemTranslation {
|
|
26340
|
+
/**
|
|
26341
|
+
* The item’s name.
|
|
26342
|
+
*/
|
|
26343
|
+
name: string
|
|
26344
|
+
|
|
26345
|
+
/**
|
|
26346
|
+
* An auxiliary name or label of the item, if available.
|
|
26347
|
+
*/
|
|
26348
|
+
secondaryName?: string
|
|
26349
|
+
|
|
26350
|
+
/**
|
|
26351
|
+
* Note text.
|
|
26352
|
+
*/
|
|
26353
|
+
note?: string
|
|
26354
|
+
|
|
26355
|
+
/**
|
|
26356
|
+
* Special rules text.
|
|
26357
|
+
*/
|
|
26358
|
+
rules?: string
|
|
26359
|
+
|
|
26360
|
+
/**
|
|
26361
|
+
* The weapon advantage text.
|
|
26362
|
+
*/
|
|
26363
|
+
advantage?: string
|
|
26364
|
+
|
|
26365
|
+
/**
|
|
26366
|
+
* The weapon disadvantage text.
|
|
26367
|
+
*/
|
|
26368
|
+
disadvantage?: string
|
|
26369
|
+
|
|
26370
|
+
/**
|
|
26371
|
+
* The weapon is a known item, which implies some additional values.
|
|
26372
|
+
*/
|
|
26373
|
+
knownItemSpecifics?: KnownItemSpecificsTranslation
|
|
26374
|
+
|
|
26375
|
+
errata?: Errata
|
|
26376
|
+
}
|
|
26377
|
+
|
|
26135
26378
|
/**
|
|
26136
26379
|
* Meta Conditions are rule elements that work like conditions in the sense that they have four levels with different effects, but which are not explicitly listed as conditions.
|
|
26137
26380
|
*/
|
package/lib/main.js
CHANGED
|
@@ -63,6 +63,7 @@ export const schema = new Schema([
|
|
|
63
63
|
Types.Element,
|
|
64
64
|
Types.Elixir,
|
|
65
65
|
Types.ElvenMagicalSong,
|
|
66
|
+
Types.EquipmentCategory,
|
|
66
67
|
Types.EquipmentOfBlessedOnes,
|
|
67
68
|
Types.EquipmentPackage,
|
|
68
69
|
Types.ExperienceLevel,
|
|
@@ -87,6 +88,7 @@ export const schema = new Schema([
|
|
|
87
88
|
Types.IlluminationLightSource,
|
|
88
89
|
Types.IlluminationRefillOrSupply,
|
|
89
90
|
Types.InstrumentEnchantment,
|
|
91
|
+
Types.Item,
|
|
90
92
|
Types.JesterTrick,
|
|
91
93
|
Types.Jewelry,
|
|
92
94
|
Types.KarmaSpecialAbility,
|
package/lib/types/Attribute.js
CHANGED
|
@@ -48,9 +48,7 @@ export const DerivedCharacteristic = DB.Entity(import.meta.url, {
|
|
|
48
48
|
})),
|
|
49
49
|
}),
|
|
50
50
|
instanceDisplayName: {},
|
|
51
|
-
sortOrder: {
|
|
52
|
-
keyPath: "position",
|
|
53
|
-
},
|
|
51
|
+
sortOrder: { keyPath: "position", isIndex: true },
|
|
54
52
|
uniqueConstraints: [
|
|
55
53
|
{
|
|
56
54
|
keyPath: "position",
|
package/lib/types/SkillGroup.js
CHANGED
package/lib/types/Talisman.js
CHANGED
|
@@ -61,6 +61,7 @@ export declare const ElementIdentifier: () => R;
|
|
|
61
61
|
export declare const ElixirIdentifier: () => R;
|
|
62
62
|
export declare const ElvenMagicalSongIdentifier: () => R;
|
|
63
63
|
export declare const EnhancementIdentifier: () => R;
|
|
64
|
+
export declare const EquipmentCategoryIdentifier: () => R;
|
|
64
65
|
export declare const EquipmentOfBlessedOnesIdentifier: () => R;
|
|
65
66
|
export declare const ExperienceLevelIdentifier: () => R;
|
|
66
67
|
export declare const EyeColorIdentifier: () => R;
|
|
@@ -85,6 +86,7 @@ export declare const IlluminationLightSourceIdentifier: () => R;
|
|
|
85
86
|
export declare const IlluminationRefillOrSupplyIdentifier: () => R;
|
|
86
87
|
export declare const InfluenceIdentifier: () => R;
|
|
87
88
|
export declare const InstrumentEnchantmentIdentifier: () => R;
|
|
89
|
+
export declare const ItemIdentifier: () => R;
|
|
88
90
|
export declare const JesterTrickIdentifier: () => R;
|
|
89
91
|
export declare const JewelryIdentifier: () => R;
|
|
90
92
|
export declare const KarmaSpecialAbilityIdentifier: () => R;
|
package/lib/types/_Identifier.js
CHANGED
|
@@ -30,12 +30,14 @@ import { Clothes } from "./equipment/item/Clothes.js";
|
|
|
30
30
|
import { ClothingPackage } from "./equipment/item/ClothingPackage.js";
|
|
31
31
|
import { Container } from "./equipment/item/Container.js";
|
|
32
32
|
import { Elixir } from "./equipment/item/Elixir.js";
|
|
33
|
+
import { EquipmentCategory } from "./equipment/item/EquipmentCategory.js";
|
|
33
34
|
import { EquipmentOfBlessedOnes } from "./equipment/item/EquipmentOfBlessedOnes.js";
|
|
34
35
|
import { GemOrPreciousStone } from "./equipment/item/GemOrPreciousStone.js";
|
|
35
36
|
import { HerbalAid } from "./equipment/item/HerbalAid.js";
|
|
36
37
|
import { HerbalPreservation } from "./equipment/item/HerbalPreservation.js";
|
|
37
38
|
import { IlluminationLightSource } from "./equipment/item/IlluminationLightSource.js";
|
|
38
39
|
import { IlluminationRefillOrSupply } from "./equipment/item/IlluminationRefillOrSupply.js";
|
|
40
|
+
import { Item } from "./equipment/item/Item.js";
|
|
39
41
|
import { Jewelry } from "./equipment/item/Jewelry.js";
|
|
40
42
|
import { Laboratory } from "./equipment/item/Laboratory.js";
|
|
41
43
|
import { Liebesspielzeug } from "./equipment/item/Liebesspielzeug.js";
|
|
@@ -225,6 +227,7 @@ export const ElementIdentifier = () => R(Element);
|
|
|
225
227
|
export const ElixirIdentifier = () => R(Elixir);
|
|
226
228
|
export const ElvenMagicalSongIdentifier = () => R(ElvenMagicalSong);
|
|
227
229
|
export const EnhancementIdentifier = () => R(Enhancement);
|
|
230
|
+
export const EquipmentCategoryIdentifier = () => R(EquipmentCategory);
|
|
228
231
|
export const EquipmentOfBlessedOnesIdentifier = () => R(EquipmentOfBlessedOnes);
|
|
229
232
|
export const ExperienceLevelIdentifier = () => R(ExperienceLevel);
|
|
230
233
|
export const EyeColorIdentifier = () => R(EyeColor);
|
|
@@ -249,6 +252,7 @@ export const IlluminationLightSourceIdentifier = () => R(IlluminationLightSource
|
|
|
249
252
|
export const IlluminationRefillOrSupplyIdentifier = () => R(IlluminationRefillOrSupply);
|
|
250
253
|
export const InfluenceIdentifier = () => R(Influence);
|
|
251
254
|
export const InstrumentEnchantmentIdentifier = () => R(InstrumentEnchantment);
|
|
255
|
+
export const ItemIdentifier = () => R(Item);
|
|
252
256
|
export const JesterTrickIdentifier = () => R(JesterTrick);
|
|
253
257
|
export const JewelryIdentifier = () => R(Jewelry);
|
|
254
258
|
export const KarmaSpecialAbilityIdentifier = () => R(KarmaSpecialAbility);
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import type { NonEmptyArray } from "@elyukai/utils/array/nonEmpty";
|
|
2
|
+
import * as DB from "tsondb/schema/dsl";
|
|
3
|
+
import type { Case } from "tsondb/schema/gen";
|
|
4
|
+
import type { DefaultEquipmentCategoryTypeRules, EquipmentCategory as EquipmentCategoryType, ValueRule } from "../../../../gen/types.js";
|
|
5
|
+
declare const ValueRule: DB.Enum<"ValueRule", {
|
|
6
|
+
Required: DB.EnumCase<null>;
|
|
7
|
+
Optional: DB.EnumCase<null>;
|
|
8
|
+
Prohibited: DB.EnumCase<null>;
|
|
9
|
+
}, []>;
|
|
10
|
+
declare const EquipmentCategoryType: DB.Enum<"EquipmentCategoryType", {
|
|
11
|
+
Default: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DefaultEquipmentCategoryTypeRules", DB.Object<{
|
|
12
|
+
combatValues: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AllowedCombatValues", DB.Object<{
|
|
13
|
+
isWeaponAllowed: DB.MemberDecl<DB.Boolean, true>;
|
|
14
|
+
isArmorAllowed: DB.MemberDecl<DB.Boolean, true>;
|
|
15
|
+
}>, []>>, true>;
|
|
16
|
+
restrictedTo: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
17
|
+
Required: DB.EnumCase<null>;
|
|
18
|
+
Optional: DB.EnumCase<null>;
|
|
19
|
+
Prohibited: DB.EnumCase<null>;
|
|
20
|
+
}, []>>, true>;
|
|
21
|
+
structurePoints: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
22
|
+
Required: DB.EnumCase<null>;
|
|
23
|
+
Optional: DB.EnumCase<null>;
|
|
24
|
+
Prohibited: DB.EnumCase<null>;
|
|
25
|
+
}, []>>, true>;
|
|
26
|
+
weight: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
27
|
+
Required: DB.EnumCase<null>;
|
|
28
|
+
Optional: DB.EnumCase<null>;
|
|
29
|
+
Prohibited: DB.EnumCase<null>;
|
|
30
|
+
}, []>>, true>;
|
|
31
|
+
complexity: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
32
|
+
Required: DB.EnumCase<null>;
|
|
33
|
+
Optional: DB.EnumCase<null>;
|
|
34
|
+
Prohibited: DB.EnumCase<null>;
|
|
35
|
+
}, []>>, true>;
|
|
36
|
+
}>, []>>>;
|
|
37
|
+
Special: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"SpecialEquipmentCategoryEntity", {
|
|
38
|
+
AnimalCare: DB.EnumCase<null>;
|
|
39
|
+
Book: DB.EnumCase<null>;
|
|
40
|
+
Elixir: DB.EnumCase<null>;
|
|
41
|
+
GemOrPreciousStone: DB.EnumCase<null>;
|
|
42
|
+
Newspaper: DB.EnumCase<null>;
|
|
43
|
+
Poison: DB.EnumCase<null>;
|
|
44
|
+
WorkingSupernaturalCreature: DB.EnumCase<null>;
|
|
45
|
+
}, []>>>;
|
|
46
|
+
}, []>;
|
|
47
|
+
declare const DefaultEquipmentCategoryTypeRules: DB.TypeAlias<"DefaultEquipmentCategoryTypeRules", DB.Object<{
|
|
48
|
+
combatValues: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AllowedCombatValues", DB.Object<{
|
|
49
|
+
isWeaponAllowed: DB.MemberDecl<DB.Boolean, true>;
|
|
50
|
+
isArmorAllowed: DB.MemberDecl<DB.Boolean, true>;
|
|
51
|
+
}>, []>>, true>;
|
|
52
|
+
restrictedTo: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
53
|
+
Required: DB.EnumCase<null>;
|
|
54
|
+
Optional: DB.EnumCase<null>;
|
|
55
|
+
Prohibited: DB.EnumCase<null>;
|
|
56
|
+
}, []>>, true>;
|
|
57
|
+
structurePoints: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
58
|
+
Required: DB.EnumCase<null>;
|
|
59
|
+
Optional: DB.EnumCase<null>;
|
|
60
|
+
Prohibited: DB.EnumCase<null>;
|
|
61
|
+
}, []>>, true>;
|
|
62
|
+
weight: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
63
|
+
Required: DB.EnumCase<null>;
|
|
64
|
+
Optional: DB.EnumCase<null>;
|
|
65
|
+
Prohibited: DB.EnumCase<null>;
|
|
66
|
+
}, []>>, true>;
|
|
67
|
+
complexity: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
68
|
+
Required: DB.EnumCase<null>;
|
|
69
|
+
Optional: DB.EnumCase<null>;
|
|
70
|
+
Prohibited: DB.EnumCase<null>;
|
|
71
|
+
}, []>>, true>;
|
|
72
|
+
}>, []>;
|
|
73
|
+
export declare const EquipmentCategory: DB.Entity<"EquipmentCategory", {
|
|
74
|
+
position: DB.MemberDecl<DB.Integer, true>;
|
|
75
|
+
type: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"EquipmentCategoryType", {
|
|
76
|
+
Default: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"DefaultEquipmentCategoryTypeRules", DB.Object<{
|
|
77
|
+
combatValues: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"AllowedCombatValues", DB.Object<{
|
|
78
|
+
isWeaponAllowed: DB.MemberDecl<DB.Boolean, true>;
|
|
79
|
+
isArmorAllowed: DB.MemberDecl<DB.Boolean, true>;
|
|
80
|
+
}>, []>>, true>;
|
|
81
|
+
restrictedTo: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
82
|
+
Required: DB.EnumCase<null>;
|
|
83
|
+
Optional: DB.EnumCase<null>;
|
|
84
|
+
Prohibited: DB.EnumCase<null>;
|
|
85
|
+
}, []>>, true>;
|
|
86
|
+
structurePoints: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
87
|
+
Required: DB.EnumCase<null>;
|
|
88
|
+
Optional: DB.EnumCase<null>;
|
|
89
|
+
Prohibited: DB.EnumCase<null>;
|
|
90
|
+
}, []>>, true>;
|
|
91
|
+
weight: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
92
|
+
Required: DB.EnumCase<null>;
|
|
93
|
+
Optional: DB.EnumCase<null>;
|
|
94
|
+
Prohibited: DB.EnumCase<null>;
|
|
95
|
+
}, []>>, true>;
|
|
96
|
+
complexity: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ValueRule", {
|
|
97
|
+
Required: DB.EnumCase<null>;
|
|
98
|
+
Optional: DB.EnumCase<null>;
|
|
99
|
+
Prohibited: DB.EnumCase<null>;
|
|
100
|
+
}, []>>, true>;
|
|
101
|
+
}>, []>>>;
|
|
102
|
+
Special: DB.EnumCase<DB.IncludeIdentifier<[], DB.Enum<"SpecialEquipmentCategoryEntity", {
|
|
103
|
+
AnimalCare: DB.EnumCase<null>;
|
|
104
|
+
Book: DB.EnumCase<null>;
|
|
105
|
+
Elixir: DB.EnumCase<null>;
|
|
106
|
+
GemOrPreciousStone: DB.EnumCase<null>;
|
|
107
|
+
Newspaper: DB.EnumCase<null>;
|
|
108
|
+
Poison: DB.EnumCase<null>;
|
|
109
|
+
WorkingSupernaturalCreature: DB.EnumCase<null>;
|
|
110
|
+
}, []>>>;
|
|
111
|
+
}, []>>, true>;
|
|
112
|
+
translations: DB.MemberDecl<DB.NestedEntityMap<"EquipmentCategoryTranslation", {
|
|
113
|
+
name: DB.MemberDecl<DB.String, true>;
|
|
114
|
+
}>, true>;
|
|
115
|
+
}, undefined>;
|
|
116
|
+
export declare const isEquipmentCategoryOfDefaultType: (category: EquipmentCategoryType) => category is Omit<EquipmentCategoryType, "type"> & {
|
|
117
|
+
type: Case<"Default", DefaultEquipmentCategoryTypeRules>;
|
|
118
|
+
};
|
|
119
|
+
export declare const mergeValueRules: (categories: NonEmptyArray<ValueRule>) => ValueRule["kind"];
|
|
120
|
+
export declare const mergeAllValueRules: (categories: NonEmptyArray<DefaultEquipmentCategoryTypeRules>) => DefaultEquipmentCategoryTypeRules;
|
|
121
|
+
export {};
|