optolith-database-schema 0.8.1 → 0.10.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 (106) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/lib/config.d.ts +2 -0
  3. package/lib/config.js +2 -0
  4. package/lib/main.js +8 -3
  5. package/lib/types/Advantage.d.ts +13 -2
  6. package/lib/types/Disadvantage.d.ts +12 -2
  7. package/lib/types/Profession.d.ts +12 -2
  8. package/lib/types/Talisman.d.ts +6 -6
  9. package/lib/types/_Activatable.d.ts +113 -4
  10. package/lib/types/_Activatable.js +4 -35
  11. package/lib/types/_ActivatableSelectOptionCategory.d.ts +30 -0
  12. package/lib/types/_Identifier.d.ts +9 -0
  13. package/lib/types/_IdentifierGroup.d.ts +2 -2
  14. package/lib/types/equipment/item/Poison.d.ts +21 -1
  15. package/lib/types/equipment/item/Poison.js +1 -0
  16. package/lib/types/equipment/item/Weapon.d.ts +4 -3
  17. package/lib/types/equipment/item/sub/ArmorType.d.ts +3 -3
  18. package/lib/types/magicalActions/MagicalRune.d.ts +82 -16
  19. package/lib/types/prerequisites/DisplayOption.d.ts +14 -0
  20. package/lib/types/prerequisites/PrerequisiteGroups.d.ts +23 -1
  21. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.d.ts +5 -0
  22. package/lib/types/prerequisites/single/AncestorBloodPrerequisite.js +1 -0
  23. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.d.ts +67 -0
  24. package/lib/types/prerequisites/single/RatedMinimumNumberPrerequisite.js +6 -0
  25. package/lib/types/prerequisites/single/RatedPrerequisite.d.ts +0 -55
  26. package/lib/types/prerequisites/single/RatedSumPrerequisite.d.ts +19 -0
  27. package/lib/types/prerequisites/single/RatedSumPrerequisite.js +1 -0
  28. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.d.ts +11 -0
  29. package/lib/types/prerequisites/single/SexualCharacteristicPrerequisite.js +5 -0
  30. package/lib/types/prerequisites/single/TextPrerequisite.d.ts +29 -0
  31. package/lib/types/prerequisites/single/TextPrerequisite.js +5 -0
  32. package/lib/types/specialAbility/AdvancedCombatSpecialAbility.d.ts +11 -0
  33. package/lib/types/specialAbility/CeremonialItemSpecialAbility.d.ts +7 -2
  34. package/lib/types/specialAbility/CombatSpecialAbility.d.ts +6 -2
  35. package/lib/types/specialAbility/FatePointSpecialAbility.d.ts +5 -0
  36. package/lib/types/specialAbility/GeneralSpecialAbility.d.ts +12 -2
  37. package/lib/types/specialAbility/KarmaSpecialAbility.d.ts +7 -2
  38. package/lib/types/specialAbility/MagicalSign.d.ts +38 -0
  39. package/lib/types/specialAbility/MagicalSign.js +5 -0
  40. package/lib/types/specialAbility/MagicalSpecialAbility.d.ts +11 -2
  41. package/lib/types/specialAbility/MagicalTradition.d.ts +2 -2
  42. package/lib/types/specialAbility/ProtectiveWardingCircleSpecialAbility.d.ts +6 -0
  43. package/lib/types/specialAbility/SikaryanDrainSpecialAbility.d.ts +5 -0
  44. package/lib/types/specialAbility/VampiricGift.d.ts +7 -2
  45. package/lib/types/traditionArtifacts/ArcaneOrbEnchantment.d.ts +2 -2
  46. package/lib/types/traditionArtifacts/AttireEnchantment.d.ts +2 -2
  47. package/lib/types/traditionArtifacts/BowlEnchantment.d.ts +2 -2
  48. package/lib/types/traditionArtifacts/CauldronEnchantment.d.ts +2 -2
  49. package/lib/types/traditionArtifacts/ChronicleEnchantment.d.ts +2 -2
  50. package/lib/types/traditionArtifacts/DaggerRitual.d.ts +3 -3
  51. package/lib/types/traditionArtifacts/FoolsHatEnchantment.d.ts +2 -2
  52. package/lib/types/traditionArtifacts/InstrumentEnchantment.d.ts +2 -2
  53. package/lib/types/traditionArtifacts/Krallenkettenzauber.d.ts +2 -2
  54. package/lib/types/traditionArtifacts/OrbEnchantment.d.ts +2 -2
  55. package/lib/types/traditionArtifacts/RingEnchantment.d.ts +2 -2
  56. package/lib/types/traditionArtifacts/SickleRitual.d.ts +2 -2
  57. package/lib/types/traditionArtifacts/SpellSwordEnchantment.d.ts +7 -2
  58. package/lib/types/traditionArtifacts/StaffEnchantment.d.ts +13 -3
  59. package/lib/types/traditionArtifacts/ToyEnchantment.d.ts +3 -3
  60. package/lib/types/traditionArtifacts/Trinkhornzauber.d.ts +2 -2
  61. package/lib/types/traditionArtifacts/WandEnchantment.d.ts +2 -7
  62. package/lib/types/traditionArtifacts/WeaponEnchantment.d.ts +4 -3
  63. package/lib/validation/schema.js +2 -2
  64. package/package.json +1 -1
  65. package/schema/Advantage.schema.json +11 -0
  66. package/schema/Disadvantage.schema.json +8 -0
  67. package/schema/Profession.schema.json +8 -0
  68. package/schema/Talisman.schema.json +2 -4
  69. package/schema/_Activatable.schema.json +166 -0
  70. package/schema/_ActivatableSelectOptionCategory.schema.json +141 -0
  71. package/schema/_Identifier.schema.json +18 -0
  72. package/schema/_IdentifierGroup.schema.json +6 -0
  73. package/schema/equipment/item/Poison.schema.json +55 -1
  74. package/schema/equipment/item/Weapon.schema.json +5 -1
  75. package/schema/equipment/item/sub/ArmorType.schema.json +1 -2
  76. package/schema/magicalActions/MagicalRune.schema.json +213 -21
  77. package/schema/prerequisites/DisplayOption.schema.json +4 -0
  78. package/schema/prerequisites/PrerequisiteGroups.schema.json +98 -2
  79. package/schema/prerequisites/single/AncestorBloodPrerequisite.schema.json +14 -0
  80. package/schema/prerequisites/single/RatedMinimumNumberPrerequisite.schema.json +166 -0
  81. package/schema/prerequisites/single/RatedPrerequisite.schema.json +0 -125
  82. package/schema/prerequisites/single/RatedSumPrerequisite.schema.json +33 -0
  83. package/schema/prerequisites/single/SexualCharacteristicPrerequisite.schema.json +26 -0
  84. package/schema/prerequisites/single/TextPrerequisite.schema.json +14 -0
  85. package/schema/specialAbility/AdvancedCombatSpecialAbility.schema.json +8 -0
  86. package/schema/specialAbility/CeremonialItemSpecialAbility.schema.json +4 -0
  87. package/schema/specialAbility/CombatSpecialAbility.schema.json +4 -0
  88. package/schema/specialAbility/CombatStyleSpecialAbility.schema.json +42 -27
  89. package/schema/specialAbility/FatePointSpecialAbility.schema.json +4 -0
  90. package/schema/specialAbility/GeneralSpecialAbility.schema.json +8 -0
  91. package/schema/specialAbility/KarmaSpecialAbility.schema.json +4 -0
  92. package/schema/specialAbility/LiturgicalStyleSpecialAbility.schema.json +42 -27
  93. package/schema/specialAbility/MagicStyleSpecialAbility.schema.json +42 -27
  94. package/schema/specialAbility/MagicalSign.schema.json +72 -0
  95. package/schema/specialAbility/MagicalSpecialAbility.schema.json +8 -0
  96. package/schema/specialAbility/MagicalTradition.schema.json +0 -2
  97. package/schema/specialAbility/ProtectiveWardingCircleSpecialAbility.schema.json +6 -0
  98. package/schema/specialAbility/SikaryanDrainSpecialAbility.schema.json +4 -0
  99. package/schema/specialAbility/SkillStyleSpecialAbility.schema.json +42 -27
  100. package/schema/specialAbility/VampiricGift.schema.json +4 -0
  101. package/schema/traditionArtifacts/DaggerRitual.schema.json +0 -1
  102. package/schema/traditionArtifacts/SpellSwordEnchantment.schema.json +4 -0
  103. package/schema/traditionArtifacts/StaffEnchantment.schema.json +8 -1
  104. package/schema/traditionArtifacts/ToyEnchantment.schema.json +0 -1
  105. package/schema/traditionArtifacts/WandEnchantment.schema.json +1 -9
  106. package/schema/traditionArtifacts/WeaponEnchantment.schema.json +8 -1
@@ -0,0 +1,72 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2019-09/schema",
3
+ "$id": "/specialAbility/MagicalSign.schema.json",
4
+ "$ref": "#/$defs/MagicalSign",
5
+ "$defs": {
6
+ "MagicalSign": {
7
+ "title": "Magical Sign",
8
+ "type": "object",
9
+ "properties": {
10
+ "id": {
11
+ "$ref": "../_Activatable.schema.json#/$defs/Id"
12
+ },
13
+ "prerequisites": {
14
+ "$ref": "../_Prerequisite.schema.json#/$defs/GeneralPrerequisites"
15
+ },
16
+ "property": {
17
+ "description": "The associated magic property.",
18
+ "$ref": "../_SimpleReferences.schema.json#/$defs/PropertyReference"
19
+ },
20
+ "ap_value": {
21
+ "description": "The adventure points value.",
22
+ "type": "integer",
23
+ "minimum": 0
24
+ },
25
+ "src": {
26
+ "$ref": "../source/_PublicationRef.schema.json#/$defs/PublicationRefs"
27
+ },
28
+ "translations": {
29
+ "description": "All translations for the entry, identified by IETF language tag (BCP47).",
30
+ "type": "object",
31
+ "patternProperties": {
32
+ "^[a-z]{2}-[A-Z]{2}$": {
33
+ "$ref": "#/$defs/ProtectiveWardingCircleSpecialAbilityTranslation"
34
+ }
35
+ },
36
+ "minProperties": 1,
37
+ "additionalProperties": false
38
+ }
39
+ },
40
+ "required": [
41
+ "id",
42
+ "property",
43
+ "ap_value",
44
+ "src",
45
+ "translations"
46
+ ],
47
+ "additionalProperties": false
48
+ },
49
+ "ProtectiveWardingCircleSpecialAbilityTranslation": {
50
+ "type": "object",
51
+ "properties": {
52
+ "name": {
53
+ "$ref": "../_Activatable.schema.json#/$defs/Name"
54
+ },
55
+ "name_in_library": {
56
+ "$ref": "../_Activatable.schema.json#/$defs/NameInLibrary"
57
+ },
58
+ "effect": {
59
+ "$ref": "../_Activatable.schema.json#/$defs/Effect"
60
+ },
61
+ "errata": {
62
+ "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
63
+ }
64
+ },
65
+ "required": [
66
+ "name",
67
+ "effect"
68
+ ],
69
+ "additionalProperties": false
70
+ }
71
+ }
72
+ }
@@ -63,9 +63,17 @@
63
63
  "name_in_library": {
64
64
  "$ref": "../_Activatable.schema.json#/$defs/NameInLibrary"
65
65
  },
66
+ "input": {
67
+ "description": "A string that is used as a label for an input field.",
68
+ "$ref": "../_Activatable.schema.json#/$defs/Input"
69
+ },
66
70
  "rules": {
67
71
  "$ref": "../_Activatable.schema.json#/$defs/Rules"
68
72
  },
73
+ "ap_value": {
74
+ "description": "The AP value. It is only used if the text cannot be generated from the\ngiven information.",
75
+ "$ref": "../_Activatable.schema.json#/$defs/AdventurePointsValueReplacement"
76
+ },
69
77
  "errata": {
70
78
  "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
71
79
  }
@@ -101,10 +101,8 @@
101
101
  "can_learn_rituals",
102
102
  "can_bind_familiars",
103
103
  "allows_multiple_traditions",
104
- "alternative_magical_adventure_points_maximum",
105
104
  "require_non_spellwork_exclusive_effects",
106
105
  "is_magical_dilettante",
107
- "use_arcane_spellworks_from_tradition",
108
106
  "ap_value",
109
107
  "src",
110
108
  "translations"
@@ -22,6 +22,11 @@
22
22
  "prerequisites": {
23
23
  "$ref": "../_Prerequisite.schema.json#/$defs/GeneralPrerequisites"
24
24
  },
25
+ "cost": {
26
+ "description": "The cost in AE.",
27
+ "type": "integer",
28
+ "minimum": 0
29
+ },
25
30
  "ap_value": {
26
31
  "$ref": "../_Activatable.schema.json#/$defs/AdventurePointsValue"
27
32
  },
@@ -42,6 +47,7 @@
42
47
  },
43
48
  "required": [
44
49
  "id",
50
+ "cost",
45
51
  "ap_value",
46
52
  "src",
47
53
  "translations"
@@ -60,6 +60,10 @@
60
60
  "rules": {
61
61
  "$ref": "../_Activatable.schema.json#/$defs/Rules"
62
62
  },
63
+ "ap_value": {
64
+ "description": "The AP value. It is only used if the text cannot be generated from the\ngiven information.",
65
+ "$ref": "../_Activatable.schema.json#/$defs/AdventurePointsValueReplacement"
66
+ },
63
67
  "errata": {
64
68
  "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
65
69
  }
@@ -95,16 +95,21 @@
95
95
  "type": "object",
96
96
  "properties": {
97
97
  "options": {
98
- "type": "object",
99
- "properties": {
100
- "id": {
101
- "$ref": "../_Identifier.schema.json#/$defs/AdvancedSkillSpecialAbilityIdentifier"
102
- }
98
+ "description": "The possible advanced special abilities.",
99
+ "type": "array",
100
+ "items": {
101
+ "type": "object",
102
+ "properties": {
103
+ "id": {
104
+ "$ref": "../_Identifier.schema.json#/$defs/AdvancedSkillSpecialAbilityIdentifier"
105
+ }
106
+ },
107
+ "required": [
108
+ "id"
109
+ ],
110
+ "additionalProperties": false
103
111
  },
104
- "required": [
105
- "id"
106
- ],
107
- "additionalProperties": false
112
+ "minItems": 2
108
113
  },
109
114
  "is_selection_required_on_purchase": {
110
115
  "description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
@@ -263,16 +268,21 @@
263
268
  "type": "object",
264
269
  "properties": {
265
270
  "options": {
266
- "type": "object",
267
- "properties": {
268
- "id": {
269
- "$ref": "../_Identifier.schema.json#/$defs/AdvancedSkillSpecialAbilityIdentifier"
270
- }
271
+ "description": "The possible advanced special abilities.",
272
+ "type": "array",
273
+ "items": {
274
+ "type": "object",
275
+ "properties": {
276
+ "id": {
277
+ "$ref": "../_Identifier.schema.json#/$defs/AdvancedSkillSpecialAbilityIdentifier"
278
+ }
279
+ },
280
+ "required": [
281
+ "id"
282
+ ],
283
+ "additionalProperties": false
271
284
  },
272
- "required": [
273
- "id"
274
- ],
275
- "additionalProperties": false
285
+ "minItems": 2
276
286
  },
277
287
  "is_selection_required_on_purchase": {
278
288
  "description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
@@ -431,16 +441,21 @@
431
441
  "type": "object",
432
442
  "properties": {
433
443
  "options": {
434
- "type": "object",
435
- "properties": {
436
- "id": {
437
- "$ref": "../_Identifier.schema.json#/$defs/AdvancedSkillSpecialAbilityIdentifier"
438
- }
444
+ "description": "The possible advanced special abilities.",
445
+ "type": "array",
446
+ "items": {
447
+ "type": "object",
448
+ "properties": {
449
+ "id": {
450
+ "$ref": "../_Identifier.schema.json#/$defs/AdvancedSkillSpecialAbilityIdentifier"
451
+ }
452
+ },
453
+ "required": [
454
+ "id"
455
+ ],
456
+ "additionalProperties": false
439
457
  },
440
- "required": [
441
- "id"
442
- ],
443
- "additionalProperties": false
458
+ "minItems": 2
444
459
  },
445
460
  "is_selection_required_on_purchase": {
446
461
  "description": "Do have to choose the advanced special ability when buying the style\nspecial ability? Otherwise the decision can be made later.",
@@ -60,6 +60,10 @@
60
60
  "rules": {
61
61
  "$ref": "../_Activatable.schema.json#/$defs/Rules"
62
62
  },
63
+ "ap_value": {
64
+ "description": "The AP value. It is only used if the text cannot be generated from the\ngiven information.",
65
+ "$ref": "../_Activatable.schema.json#/$defs/AdventurePointsValueReplacement"
66
+ },
63
67
  "errata": {
64
68
  "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
65
69
  }
@@ -52,7 +52,6 @@
52
52
  "required": [
53
53
  "id",
54
54
  "volume",
55
- "cost",
56
55
  "property",
57
56
  "ap_value",
58
57
  "src",
@@ -80,6 +80,10 @@
80
80
  "bindingCost": {
81
81
  "type": "string"
82
82
  },
83
+ "ap_value": {
84
+ "description": "The AP value. It is only used if the text cannot be generated from the\ngiven information.",
85
+ "$ref": "../_Activatable.schema.json#/$defs/AdventurePointsValueReplacement"
86
+ },
83
87
  "errata": {
84
88
  "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
85
89
  }
@@ -52,7 +52,6 @@
52
52
  "required": [
53
53
  "id",
54
54
  "volume",
55
- "cost",
56
55
  "property",
57
56
  "ap_value",
58
57
  "src",
@@ -78,9 +77,17 @@
78
77
  "aeCost": {
79
78
  "type": "string"
80
79
  },
80
+ "cost_note": {
81
+ "description": "A note, appended to the generated cost string in parenthesis.",
82
+ "$ref": "../_ResponsiveText.schema.json#/$defs/ResponsiveTextOptional"
83
+ },
81
84
  "bindingCost": {
82
85
  "type": "string"
83
86
  },
87
+ "ap_value": {
88
+ "description": "The AP value. It is only used if the text cannot be generated from the\ngiven information.",
89
+ "$ref": "../_Activatable.schema.json#/$defs/AdventurePointsValueReplacement"
90
+ },
84
91
  "errata": {
85
92
  "$ref": "../source/_Erratum.schema.json#/$defs/Errata"
86
93
  }
@@ -52,7 +52,6 @@
52
52
  "required": [
53
53
  "id",
54
54
  "volume",
55
- "cost",
56
55
  "property",
57
56
  "ap_value",
58
57
  "src",
@@ -22,9 +22,6 @@
22
22
  "prerequisites": {
23
23
  "$ref": "../_Prerequisite.schema.json#/$defs/GeneralPrerequisites"
24
24
  },
25
- "volume": {
26
- "$ref": "../_Activatable.schema.json#/$defs/Volume"
27
- },
28
25
  "cost": {
29
26
  "$ref": "../_Activatable.schema.json#/$defs/EnchantmentCost"
30
27
  },
@@ -51,7 +48,6 @@
51
48
  },
52
49
  "required": [
53
50
  "id",
54
- "volume",
55
51
  "property",
56
52
  "ap_value",
57
53
  "src",
@@ -71,9 +67,6 @@
71
67
  "effect": {
72
68
  "$ref": "../_Activatable.schema.json#/$defs/Effect"
73
69
  },
74
- "volume": {
75
- "type": "string"
76
- },
77
70
  "aeCost": {
78
71
  "type": "string"
79
72
  },
@@ -86,8 +79,7 @@
86
79
  },
87
80
  "required": [
88
81
  "name",
89
- "effect",
90
- "volume"
82
+ "effect"
91
83
  ],
92
84
  "additionalProperties": false
93
85
  }
@@ -39,7 +39,14 @@
39
39
  },
40
40
  "translations": {
41
41
  "description": "All translations for the entry, identified by IETF language tag (BCP47).",
42
- "$ref": "#/$defs/WeaponEnchantmentTranslation"
42
+ "type": "object",
43
+ "patternProperties": {
44
+ "^[a-z]{2}-[A-Z]{2}$": {
45
+ "$ref": "#/$defs/WeaponEnchantmentTranslation"
46
+ }
47
+ },
48
+ "minProperties": 1,
49
+ "additionalProperties": false
43
50
  }
44
51
  },
45
52
  "required": [