@optolith/database-schema 0.68.0 → 0.69.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 (38) hide show
  1. package/CHANGELOG.md +18 -0
  2. package/gen/types.d.ts +16 -0
  3. package/lib/cache/index.d.ts +4 -1
  4. package/lib/cache/index.js +5 -2
  5. package/lib/cache/tradeSecrets.d.ts +23 -0
  6. package/lib/cache/tradeSecrets.js +126 -0
  7. package/lib/types/Disease.d.ts +41 -0
  8. package/lib/types/equipment/item/Armor.d.ts +41 -0
  9. package/lib/types/equipment/item/BandageOrRemedy.d.ts +41 -0
  10. package/lib/types/equipment/item/Book.d.ts +41 -0
  11. package/lib/types/equipment/item/CeremonialItem.d.ts +41 -0
  12. package/lib/types/equipment/item/Clothes.d.ts +41 -0
  13. package/lib/types/equipment/item/Container.d.ts +41 -0
  14. package/lib/types/equipment/item/Elixir.d.ts +41 -0
  15. package/lib/types/equipment/item/HerbalAid.d.ts +41 -0
  16. package/lib/types/equipment/item/IlluminationLightSource.d.ts +41 -0
  17. package/lib/types/equipment/item/IlluminationRefillOrSupply.d.ts +41 -0
  18. package/lib/types/equipment/item/Jewelry.d.ts +41 -0
  19. package/lib/types/equipment/item/Laboratory.d.ts +41 -0
  20. package/lib/types/equipment/item/Liebesspielzeug.d.ts +41 -0
  21. package/lib/types/equipment/item/LuxuryGood.d.ts +41 -0
  22. package/lib/types/equipment/item/MagicalArtifact.d.ts +41 -0
  23. package/lib/types/equipment/item/MusicalInstrument.d.ts +41 -0
  24. package/lib/types/equipment/item/OrienteeringAid.d.ts +41 -0
  25. package/lib/types/equipment/item/Poison.d.ts +164 -0
  26. package/lib/types/equipment/item/RopeOrChain.d.ts +41 -0
  27. package/lib/types/equipment/item/Stationery.d.ts +41 -0
  28. package/lib/types/equipment/item/ThievesTool.d.ts +41 -0
  29. package/lib/types/equipment/item/ToolOfTheTrade.d.ts +41 -0
  30. package/lib/types/equipment/item/TravelGearOrTool.d.ts +41 -0
  31. package/lib/types/equipment/item/Vehicle.d.ts +41 -0
  32. package/lib/types/equipment/item/Weapon.d.ts +41 -0
  33. package/lib/types/equipment/item/WeaponAccessory.d.ts +41 -0
  34. package/lib/types/equipment/item/_Herbary.d.ts +82 -0
  35. package/lib/types/equipment/item/_Herbary.js +3 -0
  36. package/lib/types/equipment/item/_Item.d.ts +123 -0
  37. package/lib/types/equipment/item/_Item.js +3 -1
  38. package/package.json +1 -1
@@ -52,6 +52,47 @@ export declare const RecipeComplexity: DB.Enum<"RecipeComplexity", {
52
52
  }>, true>;
53
53
  }>, [T: DB.Param<"T", DB.Type>]>>>;
54
54
  }, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
55
+ src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
56
+ id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
57
+ occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
58
+ initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
59
+ printing: DB.MemberDecl<DB.Integer, false>;
60
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
61
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
62
+ InsideCoverFront: DB.EnumCase<null>;
63
+ InsideCoverBack: DB.EnumCase<null>;
64
+ Numbered: DB.EnumCase<DB.Integer>;
65
+ }, []>>, true>;
66
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
67
+ InsideCoverFront: DB.EnumCase<null>;
68
+ InsideCoverBack: DB.EnumCase<null>;
69
+ Numbered: DB.EnumCase<DB.Integer>;
70
+ }, []>>, false>;
71
+ }>, []>>>, true>;
72
+ isRemoved: DB.MemberDecl<DB.Boolean, false>;
73
+ }>, []>>, true>;
74
+ revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
75
+ Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
76
+ printing: DB.MemberDecl<DB.Integer, true>;
77
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
78
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
79
+ InsideCoverFront: DB.EnumCase<null>;
80
+ InsideCoverBack: DB.EnumCase<null>;
81
+ Numbered: DB.EnumCase<DB.Integer>;
82
+ }, []>>, true>;
83
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
84
+ InsideCoverFront: DB.EnumCase<null>;
85
+ InsideCoverBack: DB.EnumCase<null>;
86
+ Numbered: DB.EnumCase<DB.Integer>;
87
+ }, []>>, false>;
88
+ }>, []>>>, true>;
89
+ }>, []>>>;
90
+ Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
91
+ printing: DB.MemberDecl<DB.Integer, true>;
92
+ }>, []>>>;
93
+ }, []>>>, false>;
94
+ }>, true>;
95
+ }>, []>>>, []>>, false>;
55
96
  }>, []>>>;
56
97
  }, []>;
57
98
  export declare const RecipeTradeSecret: DB.TypeAlias<"RecipeTradeSecret", DB.Object<{
@@ -80,4 +121,45 @@ export declare const RecipeTradeSecret: DB.TypeAlias<"RecipeTradeSecret", DB.Obj
80
121
  }>, true>;
81
122
  }>, [T: DB.Param<"T", DB.Type>]>>>;
82
123
  }, [T: DB.Param<"T", DB.Type>]>>>, [T: DB.Param<"T", DB.Type>]>>, []>>, false>;
124
+ src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
125
+ id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
126
+ occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
127
+ initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
128
+ printing: DB.MemberDecl<DB.Integer, false>;
129
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
130
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
131
+ InsideCoverFront: DB.EnumCase<null>;
132
+ InsideCoverBack: DB.EnumCase<null>;
133
+ Numbered: DB.EnumCase<DB.Integer>;
134
+ }, []>>, true>;
135
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
136
+ InsideCoverFront: DB.EnumCase<null>;
137
+ InsideCoverBack: DB.EnumCase<null>;
138
+ Numbered: DB.EnumCase<DB.Integer>;
139
+ }, []>>, false>;
140
+ }>, []>>>, true>;
141
+ isRemoved: DB.MemberDecl<DB.Boolean, false>;
142
+ }>, []>>, true>;
143
+ revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
144
+ Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
145
+ printing: DB.MemberDecl<DB.Integer, true>;
146
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
147
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
148
+ InsideCoverFront: DB.EnumCase<null>;
149
+ InsideCoverBack: DB.EnumCase<null>;
150
+ Numbered: DB.EnumCase<DB.Integer>;
151
+ }, []>>, true>;
152
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
153
+ InsideCoverFront: DB.EnumCase<null>;
154
+ InsideCoverBack: DB.EnumCase<null>;
155
+ Numbered: DB.EnumCase<DB.Integer>;
156
+ }, []>>, false>;
157
+ }>, []>>>, true>;
158
+ }>, []>>>;
159
+ Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
160
+ printing: DB.MemberDecl<DB.Integer, true>;
161
+ }>, []>>>;
162
+ }, []>>>, false>;
163
+ }>, true>;
164
+ }>, []>>>, []>>, false>;
83
165
  }>, []>;
@@ -3,6 +3,7 @@
3
3
  */
4
4
  import * as DB from "tsondb/schema/dsl";
5
5
  import { PlainGeneralPrerequisites } from "../../_Prerequisite.js";
6
+ import { optionalSrc } from "../../source/_PublicationRef.js";
6
7
  export const EffectType = DB.Enum(import.meta.url, {
7
8
  name: "EffectType",
8
9
  comment: "Effect type categories of a plant or recipe.",
@@ -46,6 +47,7 @@ export const RecipeComplexity = DB.Enum(import.meta.url, {
46
47
  });
47
48
  export const RecipeTradeSecret = DB.TypeAlias(import.meta.url, {
48
49
  name: "RecipeTradeSecret",
50
+ comment: "A recipe’s trade secret inherits the source references from its recipe. Specifying source references here instead means none of the recipe’s source references are inherited.",
49
51
  type: () => DB.Object({
50
52
  ap_value: DB.Required({
51
53
  comment: "The AP value of the trade secret.",
@@ -55,5 +57,6 @@ export const RecipeTradeSecret = DB.TypeAlias(import.meta.url, {
55
57
  comment: "The prerequisites of the trade secret, if any.",
56
58
  type: DB.IncludeIdentifier(PlainGeneralPrerequisites),
57
59
  }),
60
+ src: optionalSrc,
58
61
  }),
59
62
  });
@@ -24,6 +24,47 @@ export declare const DefaultItem: (sourceUrl: string, singularName: string, plur
24
24
  Simple: DB.EnumCase<null>;
25
25
  Complex: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ComplexComplexity", DB.Object<{
26
26
  ap_value: DB.MemberDecl<DB.Integer, true>;
27
+ src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
28
+ id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
29
+ occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
30
+ initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
31
+ printing: DB.MemberDecl<DB.Integer, false>;
32
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
33
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
34
+ InsideCoverFront: DB.EnumCase<null>;
35
+ InsideCoverBack: DB.EnumCase<null>;
36
+ Numbered: DB.EnumCase<DB.Integer>;
37
+ }, []>>, true>;
38
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
39
+ InsideCoverFront: DB.EnumCase<null>;
40
+ InsideCoverBack: DB.EnumCase<null>;
41
+ Numbered: DB.EnumCase<DB.Integer>;
42
+ }, []>>, false>;
43
+ }>, []>>>, true>;
44
+ isRemoved: DB.MemberDecl<DB.Boolean, false>;
45
+ }>, []>>, true>;
46
+ revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
47
+ Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
48
+ printing: DB.MemberDecl<DB.Integer, true>;
49
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
50
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
51
+ InsideCoverFront: DB.EnumCase<null>;
52
+ InsideCoverBack: DB.EnumCase<null>;
53
+ Numbered: DB.EnumCase<DB.Integer>;
54
+ }, []>>, true>;
55
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
56
+ InsideCoverFront: DB.EnumCase<null>;
57
+ InsideCoverBack: DB.EnumCase<null>;
58
+ Numbered: DB.EnumCase<DB.Integer>;
59
+ }, []>>, false>;
60
+ }>, []>>>, true>;
61
+ }>, []>>>;
62
+ Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
63
+ printing: DB.MemberDecl<DB.Integer, true>;
64
+ }>, []>>>;
65
+ }, []>>>, false>;
66
+ }>, true>;
67
+ }>, []>>>, []>>, false>;
27
68
  }>, []>>>;
28
69
  }, []>>, false>;
29
70
  structure_points: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"StructurePoints", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"StructurePointsComponent", DB.Object<{
@@ -367,10 +408,92 @@ export declare const Complexity: DB.Enum<"Complexity", {
367
408
  Simple: DB.EnumCase<null>;
368
409
  Complex: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"ComplexComplexity", DB.Object<{
369
410
  ap_value: DB.MemberDecl<DB.Integer, true>;
411
+ src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
412
+ id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
413
+ occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
414
+ initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
415
+ printing: DB.MemberDecl<DB.Integer, false>;
416
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
417
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
418
+ InsideCoverFront: DB.EnumCase<null>;
419
+ InsideCoverBack: DB.EnumCase<null>;
420
+ Numbered: DB.EnumCase<DB.Integer>;
421
+ }, []>>, true>;
422
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
423
+ InsideCoverFront: DB.EnumCase<null>;
424
+ InsideCoverBack: DB.EnumCase<null>;
425
+ Numbered: DB.EnumCase<DB.Integer>;
426
+ }, []>>, false>;
427
+ }>, []>>>, true>;
428
+ isRemoved: DB.MemberDecl<DB.Boolean, false>;
429
+ }>, []>>, true>;
430
+ revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
431
+ Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
432
+ printing: DB.MemberDecl<DB.Integer, true>;
433
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
434
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
435
+ InsideCoverFront: DB.EnumCase<null>;
436
+ InsideCoverBack: DB.EnumCase<null>;
437
+ Numbered: DB.EnumCase<DB.Integer>;
438
+ }, []>>, true>;
439
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
440
+ InsideCoverFront: DB.EnumCase<null>;
441
+ InsideCoverBack: DB.EnumCase<null>;
442
+ Numbered: DB.EnumCase<DB.Integer>;
443
+ }, []>>, false>;
444
+ }>, []>>>, true>;
445
+ }>, []>>>;
446
+ Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
447
+ printing: DB.MemberDecl<DB.Integer, true>;
448
+ }>, []>>>;
449
+ }, []>>>, false>;
450
+ }>, true>;
451
+ }>, []>>>, []>>, false>;
370
452
  }>, []>>>;
371
453
  }, []>;
372
454
  export declare const ComplexComplexity: DB.TypeAlias<"ComplexComplexity", DB.Object<{
373
455
  ap_value: DB.MemberDecl<DB.Integer, true>;
456
+ src: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRefs", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PublicationRef", DB.Object<{
457
+ id: DB.MemberDecl<DB.ReferenceIdentifier, true>;
458
+ occurrences: DB.MemberDecl<DB.NestedEntityMap<string, {
459
+ initial: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"InitialOccurrence", DB.Object<{
460
+ printing: DB.MemberDecl<DB.Integer, false>;
461
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
462
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
463
+ InsideCoverFront: DB.EnumCase<null>;
464
+ InsideCoverBack: DB.EnumCase<null>;
465
+ Numbered: DB.EnumCase<DB.Integer>;
466
+ }, []>>, true>;
467
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
468
+ InsideCoverFront: DB.EnumCase<null>;
469
+ InsideCoverBack: DB.EnumCase<null>;
470
+ Numbered: DB.EnumCase<DB.Integer>;
471
+ }, []>>, false>;
472
+ }>, []>>>, true>;
473
+ isRemoved: DB.MemberDecl<DB.Boolean, false>;
474
+ }>, []>>, true>;
475
+ revisions: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.Enum<"Revision", {
476
+ Since: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Since", DB.Object<{
477
+ printing: DB.MemberDecl<DB.Integer, true>;
478
+ pages: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PageRange", DB.Object<{
479
+ first_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
480
+ InsideCoverFront: DB.EnumCase<null>;
481
+ InsideCoverBack: DB.EnumCase<null>;
482
+ Numbered: DB.EnumCase<DB.Integer>;
483
+ }, []>>, true>;
484
+ last_page: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"Page", {
485
+ InsideCoverFront: DB.EnumCase<null>;
486
+ InsideCoverBack: DB.EnumCase<null>;
487
+ Numbered: DB.EnumCase<DB.Integer>;
488
+ }, []>>, false>;
489
+ }>, []>>>, true>;
490
+ }>, []>>>;
491
+ Deprecated: DB.EnumCase<DB.IncludeIdentifier<[], DB.TypeAlias<"Deprecation", DB.Object<{
492
+ printing: DB.MemberDecl<DB.Integer, true>;
493
+ }>, []>>>;
494
+ }, []>>>, false>;
495
+ }>, true>;
496
+ }>, []>>>, []>>, false>;
374
497
  }>, []>;
375
498
  export declare const RestrictedTo: DB.TypeAlias<"RestrictedTo", DB.Object<{
376
499
  races: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"RestrictedToRaces", DB.Object<{
@@ -3,7 +3,7 @@ import { BlessedTraditionIdentifier, CultureIdentifier, MagicalTraditionIdentifi
3
3
  import { ResponsiveTextOptional, ResponsiveTextReplace } from "../../_ResponsiveText.js";
4
4
  import { NestedTranslationMap } from "../../Locale.js";
5
5
  import { Errata } from "../../source/_Erratum.js";
6
- import { src } from "../../source/_PublicationRef.js";
6
+ import { optionalSrc, src } from "../../source/_PublicationRef.js";
7
7
  import { checkWeaponCombatTechniqueIntegrity } from "./_Weapon.js";
8
8
  import { SecondaryArmor } from "./Armor.js";
9
9
  import { ImprovisedWeapon } from "./Weapon.js";
@@ -155,11 +155,13 @@ export const Complexity = DB.Enum(import.meta.url, {
155
155
  });
156
156
  export const ComplexComplexity = DB.TypeAlias(import.meta.url, {
157
157
  name: "ComplexComplexity",
158
+ comment: "A item’s trade secret inherits the source references from its item. Specifying source references here instead means none of the item’s source references are inherited.",
158
159
  type: () => DB.Object({
159
160
  ap_value: DB.Required({
160
161
  comment: "The AP value for the trade secret.",
161
162
  type: DB.Integer({ minimum: 1 }),
162
163
  }),
164
+ src: optionalSrc,
163
165
  }),
164
166
  });
165
167
  export const RestrictedTo = DB.TypeAlias(import.meta.url, {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@optolith/database-schema",
3
- "version": "0.68.0",
3
+ "version": "0.69.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",