@optolith/database-schema 0.82.0 → 0.83.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.
- package/CHANGELOG.md +16 -0
- package/gen/types.d.ts +12 -0
- package/lib/types/AnimalDisease.d.ts +2 -0
- package/lib/types/Disease.d.ts +2 -0
- package/lib/types/Locale.d.ts +1 -0
- package/lib/types/Locale.js +1 -0
- package/lib/types/_DiseasePoison.d.ts +3 -0
- package/lib/types/_DiseasePoison.js +4 -0
- package/lib/types/equipment/item/Plant.d.ts +1 -0
- package/lib/types/equipment/item/Plant.js +1 -0
- package/lib/types/equipment/item/Poison.d.ts +3 -0
- package/lib/types/equipment/item/Poison.js +1 -0
- package/lib/types/equipment/item/sub/BotanicRegion.js +4 -0
- package/lib/types/equipment/item/sub/SubBiome.js +13 -4
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,22 @@
|
|
|
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.83.0](https://github.com/Optolith/database-schema/compare/v0.82.0...v0.83.0) (2026-10-06)
|
|
6
|
+
|
|
7
|
+
### ⚠ BREAKING CHANGES
|
|
8
|
+
|
|
9
|
+
* different duration translation for diseases
|
|
10
|
+
* various plant schema improvements
|
|
11
|
+
|
|
12
|
+
### Features
|
|
13
|
+
|
|
14
|
+
* additional text for reduceable effects ([71743e8](https://github.com/Optolith/database-schema/commit/71743e82039d7aa0523c7ded646ad8d3f145ceed))
|
|
15
|
+
* various plant schema improvements ([c4cb673](https://github.com/Optolith/database-schema/commit/c4cb673685d2ae817ae5705d6b8625d7e80cc60f))
|
|
16
|
+
|
|
17
|
+
### Bug Fixes
|
|
18
|
+
|
|
19
|
+
* different duration translation for diseases ([ef682b2](https://github.com/Optolith/database-schema/commit/ef682b28fe358b13f69250ec09c5607154754b3b))
|
|
20
|
+
|
|
5
21
|
## [0.82.0](https://github.com/Optolith/database-schema/compare/v0.81.0...v0.82.0) (2026-10-06)
|
|
6
22
|
|
|
7
23
|
### ⚠ BREAKING CHANGES
|
package/gen/types.d.ts
CHANGED
|
@@ -2746,6 +2746,7 @@ export interface Locale {
|
|
|
2746
2746
|
"Progress": string
|
|
2747
2747
|
"Incubation Time": string
|
|
2748
2748
|
"Damage": string
|
|
2749
|
+
"Duration (Disease)": string
|
|
2749
2750
|
"Causes": string
|
|
2750
2751
|
"Treatment": string
|
|
2751
2752
|
"Antidote": string
|
|
@@ -5847,6 +5848,11 @@ export interface Reduceable<Content> {
|
|
|
5847
5848
|
* The reduced value. In the source, it's the text after the slash. Some entries may not have a reduced value, i.e. there is no slash with text after it. If the text after the slash is a dash, include it here as well.
|
|
5848
5849
|
*/
|
|
5849
5850
|
reduced?: Content
|
|
5851
|
+
|
|
5852
|
+
/**
|
|
5853
|
+
* An additional text that applies regardless of the effect being reduced or not.
|
|
5854
|
+
*/
|
|
5855
|
+
additonal?: string
|
|
5850
5856
|
}
|
|
5851
5857
|
|
|
5852
5858
|
export interface Poison {
|
|
@@ -6383,6 +6389,9 @@ export type ExpressionBasedPoisonTimeExpressionValue =
|
|
|
6383
6389
|
| {
|
|
6384
6390
|
kind: "CircleOfDamnation"
|
|
6385
6391
|
}
|
|
6392
|
+
| {
|
|
6393
|
+
kind: "QualityLevels"
|
|
6394
|
+
}
|
|
6386
6395
|
|
|
6387
6396
|
export type PoisonTimeUnit =
|
|
6388
6397
|
| {
|
|
@@ -26799,6 +26808,9 @@ export interface PlantOccurrenceTranslation {
|
|
|
26799
26808
|
}
|
|
26800
26809
|
|
|
26801
26810
|
export type PlantOccurrenceTier =
|
|
26811
|
+
| {
|
|
26812
|
+
kind: "AllBiomes"
|
|
26813
|
+
}
|
|
26802
26814
|
| {
|
|
26803
26815
|
kind: "Biomes"
|
|
26804
26816
|
Biomes: Biome_ID[]
|
|
@@ -79,10 +79,12 @@ export declare const AnimalDisease: DB.Entity<"AnimalDisease", {
|
|
|
79
79
|
damage: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
80
80
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
81
81
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
82
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
82
83
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
83
84
|
duration: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
84
85
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
85
86
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
87
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
86
88
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
87
89
|
special: DB.MemberDecl<DB.String, false>;
|
|
88
90
|
treatment: DB.MemberDecl<DB.String, true>;
|
package/lib/types/Disease.d.ts
CHANGED
|
@@ -141,10 +141,12 @@ export declare const Disease: DB.Entity<"Disease", {
|
|
|
141
141
|
damage: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
142
142
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
143
143
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
144
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
144
145
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
145
146
|
duration: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
146
147
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
147
148
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
149
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
148
150
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
149
151
|
special: DB.MemberDecl<DB.String, false>;
|
|
150
152
|
treatment: DB.MemberDecl<DB.String, true>;
|
package/lib/types/Locale.d.ts
CHANGED
package/lib/types/Locale.js
CHANGED
|
@@ -38,6 +38,7 @@ export declare const cause: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.T
|
|
|
38
38
|
export declare const Reduceable: DB.TypeAlias<"Reduceable", DB.Object<{
|
|
39
39
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
40
40
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
41
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
41
42
|
}>, [Content: DB.Param<"Content", DB.Type>]>;
|
|
42
43
|
export declare const DiseaseTranslation: DB.Object<{
|
|
43
44
|
name: DB.MemberDecl<DB.String, true>;
|
|
@@ -51,10 +52,12 @@ export declare const DiseaseTranslation: DB.Object<{
|
|
|
51
52
|
damage: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
52
53
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
53
54
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
55
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
54
56
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
55
57
|
duration: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
56
58
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
57
59
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
60
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
58
61
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
59
62
|
special: DB.MemberDecl<DB.String, false>;
|
|
60
63
|
treatment: DB.MemberDecl<DB.String, true>;
|
|
@@ -100,6 +100,10 @@ This streamlines the wording for diseases and poison by using a unified wording
|
|
|
100
100
|
comment: "The reduced value. In the source, it's the text after the slash. Some entries may not have a reduced value, i.e. there is no slash with text after it. If the text after the slash is a dash, include it here as well.",
|
|
101
101
|
type: DB.TypeArgument(Content),
|
|
102
102
|
}),
|
|
103
|
+
additonal: DB.Optional({
|
|
104
|
+
comment: "An additional text that applies regardless of the effect being reduced or not.",
|
|
105
|
+
type: DB.String({ minLength: 1, markdown: "inline" }),
|
|
106
|
+
}),
|
|
103
107
|
}),
|
|
104
108
|
});
|
|
105
109
|
export const DiseaseTranslation = DB.Object({
|
|
@@ -12,6 +12,7 @@ export declare const Plant: DB.Entity<"Plant", {
|
|
|
12
12
|
occurences: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"PlantOccurences", DB.Object<{
|
|
13
13
|
items: DB.MemberDecl<DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"PlantOccurrence", DB.Object<{
|
|
14
14
|
regions: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"PlantOccurrenceTier", {
|
|
15
|
+
AllBiomes: DB.EnumCase<null>;
|
|
15
16
|
Biomes: DB.EnumCase<DB.Array<DB.ReferenceIdentifier>>;
|
|
16
17
|
SubBiomes: DB.EnumCase<DB.Array<DB.ReferenceIdentifier>>;
|
|
17
18
|
BotanicRegions: DB.EnumCase<DB.Array<DB.ReferenceIdentifier>>;
|
|
@@ -123,6 +123,7 @@ const PlantOccurrence = DB.TypeAlias(import.meta.url, {
|
|
|
123
123
|
const PlantOccurrenceTier = DB.Enum(import.meta.url, {
|
|
124
124
|
name: "PlantOccurrenceTier",
|
|
125
125
|
values: () => ({
|
|
126
|
+
AllBiomes: DB.EnumCase({ type: null }),
|
|
126
127
|
Biomes: DB.EnumCase({
|
|
127
128
|
type: DB.Array(BiomeIdentifier(), { minItems: 1 }),
|
|
128
129
|
}),
|
|
@@ -316,6 +316,7 @@ export declare const Poison: DB.Entity<"Poison", {
|
|
|
316
316
|
duration: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
317
317
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
318
318
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
319
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
319
320
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
320
321
|
value: DB.MemberDecl<DB.Integer, false>;
|
|
321
322
|
cost: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"PoisonCost", {
|
|
@@ -394,6 +395,7 @@ export declare const Poison: DB.Entity<"Poison", {
|
|
|
394
395
|
effect: DB.MemberDecl<DB.IncludeIdentifier<DB.Param<string, DB.Type>[], DB.TypeAlias<"Reduceable", DB.Object<{
|
|
395
396
|
default: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, true>;
|
|
396
397
|
reduced: DB.MemberDecl<DB.TypeArgument<DB.Param<"Content", DB.Type>>, false>;
|
|
398
|
+
additonal: DB.MemberDecl<DB.String, false>;
|
|
397
399
|
}>, [Content: DB.Param<"Content", DB.Type>]>>, true>;
|
|
398
400
|
notes: DB.MemberDecl<DB.String, false>;
|
|
399
401
|
errata: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"Errata", DB.Array<DB.IncludeIdentifier<[], DB.TypeAlias<"Erratum", DB.Object<{
|
|
@@ -429,6 +431,7 @@ export declare const ExpressionBasedPoisonTimeExpressionValue: DB.Enum<"Expressi
|
|
|
429
431
|
sides: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"DieType", DB.Integer, []>>, true>;
|
|
430
432
|
}>, []>>>;
|
|
431
433
|
CircleOfDamnation: DB.EnumCase<null>;
|
|
434
|
+
QualityLevels: DB.EnumCase<null>;
|
|
432
435
|
}, []>;
|
|
433
436
|
export declare const IndefinitePoisonTime: DB.TypeAlias<"IndefinitePoisonTime", DB.Object<{
|
|
434
437
|
translations: DB.MemberDecl<DB.NestedEntityMap<"IndefinitePoisonTimeTranslation", {
|
|
@@ -175,6 +175,7 @@ export const ExpressionBasedPoisonTimeExpressionValue = DB.Enum(import.meta.url,
|
|
|
175
175
|
Constant: DB.EnumCase({ type: DB.Integer({ minimum: 1 }) }),
|
|
176
176
|
Dice: DB.EnumCase({ type: DB.IncludeIdentifier(Dice) }),
|
|
177
177
|
CircleOfDamnation: DB.EnumCase({ type: null }),
|
|
178
|
+
QualityLevels: DB.EnumCase({ type: null }),
|
|
178
179
|
}),
|
|
179
180
|
});
|
|
180
181
|
const PoisonTimeUnit = DB.Enum(import.meta.url, {
|
|
@@ -18,6 +18,10 @@ export const BotanicRegion = DB.Entity(import.meta.url, {
|
|
|
18
18
|
}),
|
|
19
19
|
parentReferenceKey: "parent",
|
|
20
20
|
instanceDisplayName: {},
|
|
21
|
+
instanceDisplayNameCustomizer: ({ instance, instanceDisplayName, instanceDisplayNameLocaleId, getDisplayNameForInstanceId, }) => ({
|
|
22
|
+
name: `${getDisplayNameForInstanceId("SubBiome", instance.parent)?.name ?? ""} — ${instanceDisplayName}`,
|
|
23
|
+
localeId: instanceDisplayNameLocaleId,
|
|
24
|
+
}),
|
|
21
25
|
uniqueConstraints: [
|
|
22
26
|
[
|
|
23
27
|
{
|
|
@@ -22,10 +22,19 @@ export const SubBiome = DB.Entity(import.meta.url, {
|
|
|
22
22
|
}),
|
|
23
23
|
parentReferenceKey: "parent",
|
|
24
24
|
instanceDisplayName: {},
|
|
25
|
+
instanceDisplayNameCustomizer: ({ instance, instanceDisplayName, instanceDisplayNameLocaleId, getDisplayNameForInstanceId, }) => ({
|
|
26
|
+
name: `${getDisplayNameForInstanceId("Biome", instance.parent)?.name ?? ""} — ${instanceDisplayName}`,
|
|
27
|
+
localeId: instanceDisplayNameLocaleId,
|
|
28
|
+
}),
|
|
25
29
|
uniqueConstraints: [
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
+
[
|
|
31
|
+
{
|
|
32
|
+
keyPath: "parent",
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
entityMapKeyPath: "translations",
|
|
36
|
+
keyPathInEntityMap: "name",
|
|
37
|
+
},
|
|
38
|
+
],
|
|
30
39
|
],
|
|
31
40
|
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@optolith/database-schema",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.83.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",
|