@optolith/database-schema 0.58.0 → 0.59.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 +9 -0
- package/gen/types.d.ts +23 -0
- package/lib/types/Advantage.d.ts +6 -0
- package/lib/types/Advantage.js +2 -0
- package/lib/types/Disadvantage.d.ts +6 -0
- package/lib/types/Disadvantage.js +2 -0
- package/lib/types/Locale.d.ts +4 -0
- package/lib/types/Locale.js +5 -0
- package/lib/types/_ActivatableMagical.d.ts +7 -0
- package/lib/types/_ActivatableMagical.js +11 -0
- package/package.json +1 -1
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.59.0](https://github.com/Optolith/database-schema/compare/v0.58.0...v0.59.0) (2026-09-12)
|
|
6
|
+
|
|
7
|
+
### ⚠ BREAKING CHANGES
|
|
8
|
+
|
|
9
|
+
* magical dis-/advantage subtypes
|
|
10
|
+
|
|
11
|
+
### Features
|
|
12
|
+
|
|
13
|
+
* magical dis-/advantage subtypes ([986a5a9](https://github.com/Optolith/database-schema/commit/986a5a958f4d2f056ae47bdc6fe3f8627359ced1)), closes [#147](https://github.com/Optolith/database-schema/issues/147)
|
|
5
14
|
## [0.58.0](https://github.com/Optolith/database-schema/compare/v0.57.0...v0.58.0) (2026-09-11)
|
|
6
15
|
|
|
7
16
|
### ⚠ BREAKING CHANGES
|
package/gen/types.d.ts
CHANGED
|
@@ -219,6 +219,7 @@ export type EnumMap = {
|
|
|
219
219
|
AdvancedSpecialAbility: AdvancedSpecialAbility<unknown>
|
|
220
220
|
AdvancedSpecialAbilityRestrictedOptionIdentifier: AdvancedSpecialAbilityRestrictedOptionIdentifier
|
|
221
221
|
AdvantageDisadvantagePrerequisiteGroup: AdvantageDisadvantagePrerequisiteGroup
|
|
222
|
+
AdvantageDisadvantageSubtype: AdvantageDisadvantageSubtype
|
|
222
223
|
AdventurePointsDependingOnActiveInstances: AdventurePointsDependingOnActiveInstances
|
|
223
224
|
AdventurePointsDependingOnActiveInstancesExpressionValue: AdventurePointsDependingOnActiveInstancesExpressionValue
|
|
224
225
|
AdventurePointsValue: AdventurePointsValue
|
|
@@ -2440,6 +2441,10 @@ export interface Locale {
|
|
|
2440
2441
|
"only those with at least one blunt side": string
|
|
2441
2442
|
"only {$nameWithLevel}": string & { __params: { "nameWithLevel": StringableTranslationParameter } }
|
|
2442
2443
|
"only {$weapons}": string & { __params: { "weapons": StringableTranslationParameter } }
|
|
2444
|
+
"Magical Rank": string
|
|
2445
|
+
"Magical Title": string
|
|
2446
|
+
"Magical Honor": string
|
|
2447
|
+
"Magical Punishment": string
|
|
2443
2448
|
".input {$ord :number} {{{$ord}. attack}}": string & { __params: { "ord": number } }
|
|
2444
2449
|
".input {$ord :number} {{{$ord}. throw}}": string & { __params: { "ord": number } }
|
|
2445
2450
|
"depending on the level of the special ability {$name}": string & { __params: { "name": StringableTranslationParameter } }
|
|
@@ -3037,6 +3042,8 @@ export interface Advantage {
|
|
|
3037
3042
|
*/
|
|
3038
3043
|
levels?: number
|
|
3039
3044
|
|
|
3045
|
+
subtype?: AdvantageDisadvantageSubtype
|
|
3046
|
+
|
|
3040
3047
|
/**
|
|
3041
3048
|
* Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
|
|
3042
3049
|
*/
|
|
@@ -3142,6 +3149,20 @@ export interface AdvantageTranslation {
|
|
|
3142
3149
|
errata?: Errata
|
|
3143
3150
|
}
|
|
3144
3151
|
|
|
3152
|
+
export type AdvantageDisadvantageSubtype =
|
|
3153
|
+
| {
|
|
3154
|
+
kind: "MagicalRank"
|
|
3155
|
+
}
|
|
3156
|
+
| {
|
|
3157
|
+
kind: "MagicalTitle"
|
|
3158
|
+
}
|
|
3159
|
+
| {
|
|
3160
|
+
kind: "MagicalHonor"
|
|
3161
|
+
}
|
|
3162
|
+
| {
|
|
3163
|
+
kind: "MagicalPunishment"
|
|
3164
|
+
}
|
|
3165
|
+
|
|
3145
3166
|
export interface GeneralSelectOption {
|
|
3146
3167
|
/**
|
|
3147
3168
|
* The entry that contains select option.
|
|
@@ -3441,6 +3462,8 @@ export interface Disadvantage {
|
|
|
3441
3462
|
*/
|
|
3442
3463
|
levels?: number
|
|
3443
3464
|
|
|
3465
|
+
subtype?: AdvantageDisadvantageSubtype
|
|
3466
|
+
|
|
3444
3467
|
/**
|
|
3445
3468
|
* Rules for building the name of an activatable. These rules are used when the activatable doesn't have a custom name specified.
|
|
3446
3469
|
*/
|
package/lib/types/Advantage.d.ts
CHANGED
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
2
|
export declare const Advantage: DB.Entity<"Advantage", {
|
|
3
3
|
levels: DB.MemberDecl<DB.Integer, false>;
|
|
4
|
+
subtype: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"AdvantageDisadvantageSubtype", {
|
|
5
|
+
MagicalRank: DB.EnumCase<null>;
|
|
6
|
+
MagicalTitle: DB.EnumCase<null>;
|
|
7
|
+
MagicalHonor: DB.EnumCase<null>;
|
|
8
|
+
MagicalPunishment: DB.EnumCase<null>;
|
|
9
|
+
}, []>>, false>;
|
|
4
10
|
nameBuilderRules: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ActivatableNameBuilderRules", DB.Object<{
|
|
5
11
|
levelPlacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ActivatableNameLevelPlacement", {
|
|
6
12
|
BeforeOptions: DB.EnumCase<null>;
|
package/lib/types/Advantage.js
CHANGED
|
@@ -2,6 +2,7 @@ import * as DB from "tsondb/schema/dsl";
|
|
|
2
2
|
import { input, levels, maximum, name, name_in_library, range_l10n, rules } from "./_Activatable.js";
|
|
3
3
|
import { ap_value, ap_value_append, ap_value_l10n } from "./_ActivatableAdventurePointsValue.js";
|
|
4
4
|
import { automatic_entries } from "./_ActivatableAutomatic.js";
|
|
5
|
+
import { subtype } from "./_ActivatableMagical.js";
|
|
5
6
|
import { activatableDisplayNameCustomizer, nameBuilderRules } from "./_ActivatableNames.js";
|
|
6
7
|
import { explicit_select_options, select_options } from "./_ActivatableSelectOptions.js";
|
|
7
8
|
import { skill_applications, skill_uses } from "./_ActivatableSkillApplicationsAndUses.js";
|
|
@@ -14,6 +15,7 @@ export const Advantage = DB.Entity(import.meta.url, {
|
|
|
14
15
|
namePlural: "Advantages",
|
|
15
16
|
type: () => DB.Object({
|
|
16
17
|
levels,
|
|
18
|
+
subtype,
|
|
17
19
|
nameBuilderRules,
|
|
18
20
|
select_options,
|
|
19
21
|
explicit_select_options,
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
2
|
export declare const Disadvantage: DB.Entity<"Disadvantage", {
|
|
3
3
|
levels: DB.MemberDecl<DB.Integer, false>;
|
|
4
|
+
subtype: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"AdvantageDisadvantageSubtype", {
|
|
5
|
+
MagicalRank: DB.EnumCase<null>;
|
|
6
|
+
MagicalTitle: DB.EnumCase<null>;
|
|
7
|
+
MagicalHonor: DB.EnumCase<null>;
|
|
8
|
+
MagicalPunishment: DB.EnumCase<null>;
|
|
9
|
+
}, []>>, false>;
|
|
4
10
|
nameBuilderRules: DB.MemberDecl<DB.IncludeIdentifier<[], DB.TypeAlias<"ActivatableNameBuilderRules", DB.Object<{
|
|
5
11
|
levelPlacement: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"ActivatableNameLevelPlacement", {
|
|
6
12
|
BeforeOptions: DB.EnumCase<null>;
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as DB from "tsondb/schema/dsl";
|
|
2
2
|
import { input, levels, maximum, name, name_in_library, rules } from "./_Activatable.js";
|
|
3
3
|
import { ap_value, ap_value_append, ap_value_l10n } from "./_ActivatableAdventurePointsValue.js";
|
|
4
|
+
import { subtype } from "./_ActivatableMagical.js";
|
|
4
5
|
import { activatableDisplayNameCustomizer, nameBuilderRules } from "./_ActivatableNames.js";
|
|
5
6
|
import { explicit_select_options, select_options } from "./_ActivatableSelectOptions.js";
|
|
6
7
|
import { skill_applications, skill_uses } from "./_ActivatableSkillApplicationsAndUses.js";
|
|
@@ -13,6 +14,7 @@ export const Disadvantage = DB.Entity(import.meta.url, {
|
|
|
13
14
|
namePlural: "Disadvantages",
|
|
14
15
|
type: () => DB.Object({
|
|
15
16
|
levels,
|
|
17
|
+
subtype,
|
|
16
18
|
nameBuilderRules,
|
|
17
19
|
select_options,
|
|
18
20
|
explicit_select_options,
|
package/lib/types/Locale.d.ts
CHANGED
|
@@ -1374,6 +1374,10 @@ export declare const Locale: DB.Entity<"Locale", {
|
|
|
1374
1374
|
"only those with at least one blunt side": null;
|
|
1375
1375
|
"only {$nameWithLevel}": null;
|
|
1376
1376
|
"only {$weapons}": null;
|
|
1377
|
+
"Magical Rank": null;
|
|
1378
|
+
"Magical Title": null;
|
|
1379
|
+
"Magical Honor": null;
|
|
1380
|
+
"Magical Punishment": null;
|
|
1377
1381
|
".input {$ord :number} {{{$ord}. attack}}": null;
|
|
1378
1382
|
".input {$ord :number} {{{$ord}. throw}}": null;
|
|
1379
1383
|
"depending on the level of the special ability {$name}": null;
|
package/lib/types/Locale.js
CHANGED
|
@@ -1409,6 +1409,11 @@ export const Locale = DB.Entity(import.meta.url, {
|
|
|
1409
1409
|
"only those with at least one blunt side": null,
|
|
1410
1410
|
"only {$nameWithLevel}": null,
|
|
1411
1411
|
"only {$weapons}": null,
|
|
1412
|
+
// advantages/disadvantages
|
|
1413
|
+
"Magical Rank": null,
|
|
1414
|
+
"Magical Title": null,
|
|
1415
|
+
"Magical Honor": null,
|
|
1416
|
+
"Magical Punishment": null,
|
|
1412
1417
|
// combat special ability -- penalty
|
|
1413
1418
|
".input {$ord :number} {{{$ord}. attack}}": null,
|
|
1414
1419
|
".input {$ord :number} {{{$ord}. throw}}": null,
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
export declare const subtype: DB.MemberDecl<DB.IncludeIdentifier<[], DB.Enum<"AdvantageDisadvantageSubtype", {
|
|
3
|
+
MagicalRank: DB.EnumCase<null>;
|
|
4
|
+
MagicalTitle: DB.EnumCase<null>;
|
|
5
|
+
MagicalHonor: DB.EnumCase<null>;
|
|
6
|
+
MagicalPunishment: DB.EnumCase<null>;
|
|
7
|
+
}, []>>, false>;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import * as DB from "tsondb/schema/dsl";
|
|
2
|
+
const AdvantageDisadvantageSubtype = DB.Enum(import.meta.url, {
|
|
3
|
+
name: "AdvantageDisadvantageSubtype",
|
|
4
|
+
values: () => ({
|
|
5
|
+
MagicalRank: DB.EnumCase({ type: null }),
|
|
6
|
+
MagicalTitle: DB.EnumCase({ type: null }),
|
|
7
|
+
MagicalHonor: DB.EnumCase({ type: null }),
|
|
8
|
+
MagicalPunishment: DB.EnumCase({ type: null }),
|
|
9
|
+
}),
|
|
10
|
+
});
|
|
11
|
+
export const subtype = DB.Optional({ type: DB.IncludeIdentifier(AdvantageDisadvantageSubtype) });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@optolith/database-schema",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.59.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",
|