Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions src/cache/activatableSelectOptions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
SpecificTargetCategory,
TargetCategory,
TradeSecretAdventurePointsValue,
} from "../../gen/types.js"

Check failure on line 33 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Cannot find module '../../gen/types.js' or its corresponding type declarations.

Check failure on line 33 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Cannot find module '../../gen/types.js' or its corresponding type declarations.
import type { TSONDBTypes } from "../main.js"
import type { IdMap } from "./index.ts"
import type { CacheBuilder } from "./internal.ts"
Expand Down Expand Up @@ -77,7 +77,7 @@
case "Difference":
return !config.list.includes(id)
default:
return assertExhaustive(config.operation)

Check failure on line 80 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Argument of type 'any' is not assignable to parameter of type 'never'.

Check failure on line 80 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Argument of type 'any' is not assignable to parameter of type 'never'.
}
}

Expand Down Expand Up @@ -116,7 +116,7 @@
),
}
default:
return assertExhaustive(p)

Check failure on line 119 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Argument of type 'SkillSelectOptionCategoryPrerequisite' is not assignable to parameter of type 'never'.

Check failure on line 119 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Argument of type 'SkillSelectOptionCategoryPrerequisite' is not assignable to parameter of type 'never'.
}
})
}
Expand All @@ -132,7 +132,7 @@
}

return (
bindingCost.Fixed.map.find(mapping => equalsSkillishIdGroup(mapping.id, id))?.bindingCost ??

Check failure on line 135 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Parameter 'mapping' implicitly has an 'any' type.

Check failure on line 135 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Parameter 'mapping' implicitly has an 'any' type.
bindingCost.Fixed.default
)
}
Expand All @@ -159,7 +159,7 @@
b.kind === "RangedCombatTechnique" && a.RangedCombatTechnique === b.RangedCombatTechnique
)
default:
return assertExhaustive(a)

Check failure on line 162 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Argument of type 'any' is not assignable to parameter of type 'never'.

Check failure on line 162 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Argument of type 'any' is not assignable to parameter of type 'never'.
}
}

Expand Down Expand Up @@ -188,7 +188,7 @@
case "D":
return 4
default:
assertExhaustive(ic)

Check failure on line 191 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Argument of type 'ImprovementCost' is not assignable to parameter of type 'never'.

Check failure on line 191 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Argument of type 'ImprovementCost' is not assignable to parameter of type 'never'.
}
})() *
(config.DerivedFromImprovementCost.multiplier ?? 1) +
Expand All @@ -196,11 +196,11 @@
)
case "Fixed":
return (
config.Fixed.map.find(mapping => equalsSkillishIdGroup(mapping.id, id))?.ap_value ??

Check failure on line 199 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Parameter 'mapping' implicitly has an 'any' type.

Check failure on line 199 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Parameter 'mapping' implicitly has an 'any' type.
config.Fixed.default
)
default:
return assertExhaustive(config)

Check failure on line 203 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Argument of type 'any' is not assignable to parameter of type 'never'.

Check failure on line 203 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Argument of type 'any' is not assignable to parameter of type 'never'.
}
}

Expand Down Expand Up @@ -272,9 +272,9 @@
})),
},
newApplications:
category.skill_applications?.map(app => convertSkillApplicationOrUse(entryId, id, app)) ??

Check failure on line 275 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Parameter 'app' implicitly has an 'any' type.

Check failure on line 275 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Parameter 'app' implicitly has an 'any' type.
[],
uses: category.skill_uses?.map(use => convertSkillApplicationOrUse(entryId, id, use)) ?? [],

Check failure on line 277 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (24)

Parameter 'use' implicitly has an 'any' type.

Check failure on line 277 in src/cache/activatableSelectOptions.ts

View workflow job for this annotation

GitHub Actions / test (23)

Parameter 'use' implicitly has an 'any' type.
}
})
}
Expand Down Expand Up @@ -1118,8 +1118,10 @@
FoolsHatEnchantment: null,
GeneralSpecialAbility: null,
Haubenzauber: null,
Hauerkettenzauber: null,
InstrumentEnchantment: null,
KarmaSpecialAbility: null,
Keulenzauber: null,
Krallenkettenzauber: null,
Kristallkugelzauber: null,
LiturgicalStyleSpecialAbility: null,
Expand All @@ -1132,6 +1134,7 @@
PactGift: null,
ProtectiveWardingCircleSpecialAbility: null,
RingEnchantment: null,
Schweinetrommelzauber: null,
Sermon: null,
SexSpecialAbility: null,
SickleRitual: null,
Expand Down
3 changes: 3 additions & 0 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,7 @@ export const schema = new Schema<TSONDBTypes>(
Types.GoblinRitual,
Types.Guideline,
Types.HairColor,
Types.Hauerkettenzauber,
Types.Haubenzauber,
Types.HerbalAid,
Types.HerbalPreservation,
Expand All @@ -108,6 +109,7 @@ export const schema = new Schema<TSONDBTypes>(
Types.JesterTrick,
Types.Jewelry,
Types.KarmaSpecialAbility,
Types.Keulenzauber,
Types.Krallenkettenzauber,
Types.Kristallkugelzauber,
Types.Laboratory,
Expand Down Expand Up @@ -150,6 +152,7 @@ export const schema = new Schema<TSONDBTypes>(
Types.RingEnchantment,
Types.Ritual,
Types.RopeOrChain,
Types.Schweinetrommelzauber,
Types.Script,
Types.Sermon,
Types.Service,
Expand Down
6 changes: 6 additions & 0 deletions src/types/_Identifier.ts
Original file line number Diff line number Diff line change
Expand Up @@ -148,12 +148,15 @@ import { CauldronEnchantment } from "./traditionArtifacts/CauldronEnchantment.js
import { ChronicleEnchantment } from "./traditionArtifacts/ChronicleEnchantment.js"
import { DaggerRitual } from "./traditionArtifacts/DaggerRitual.js"
import { FoolsHatEnchantment } from "./traditionArtifacts/FoolsHatEnchantment.js"
import { Hauerkettenzauber } from "./traditionArtifacts/Hauerkettenzauber.js"
import { Haubenzauber } from "./traditionArtifacts/Haubenzauber.js"
import { InstrumentEnchantment } from "./traditionArtifacts/InstrumentEnchantment.js"
import { Keulenzauber } from "./traditionArtifacts/Keulenzauber.js"
import { Krallenkettenzauber } from "./traditionArtifacts/Krallenkettenzauber.js"
import { Kristallkugelzauber } from "./traditionArtifacts/Kristallkugelzauber.js"
import { OrbEnchantment } from "./traditionArtifacts/OrbEnchantment.js"
import { RingEnchantment } from "./traditionArtifacts/RingEnchantment.js"
import { Schweinetrommelzauber } from "./traditionArtifacts/Schweinetrommelzauber.js"
import { SickleRitual } from "./traditionArtifacts/SickleRitual.js"
import { SpellSwordEnchantment } from "./traditionArtifacts/SpellSwordEnchantment.js"
import { StaffEnchantment } from "./traditionArtifacts/StaffEnchantment.js"
Expand Down Expand Up @@ -245,6 +248,7 @@ export const GoblinRitualIdentifier: () => R = () => R(GoblinRitual)
export const GuidelineIdentifier: () => R = () => R(Guideline)
export const HairColorIdentifier: () => R = () => R(HairColor)
export const HaubenzauberIdentifier: () => R = () => R(Haubenzauber)
export const HauerkettenZauberIdentifier: () => R = () => R(Hauerkettenzauber)
export const HerbalAidIdentifier: () => R = () => R(HerbalAid)
export const HerbalPreservationIdentifier: () => R = () => R(HerbalPreservation)
export const IlluminationLightSourceIdentifier: () => R = () => R(IlluminationLightSource)
Expand All @@ -254,6 +258,7 @@ export const InstrumentEnchantmentIdentifier: () => R = () => R(InstrumentEnchan
export const JesterTrickIdentifier: () => R = () => R(JesterTrick)
export const JewelryIdentifier: () => R = () => R(Jewelry)
export const KarmaSpecialAbilityIdentifier: () => R = () => R(KarmaSpecialAbility)
export const KeulenzauberIdentifier: () => R = () => R(Keulenzauber)
export const KrallenkettenzauberIdentifier: () => R = () => R(Krallenkettenzauber)
export const KristallkugelzauberIdentifier: () => R = () => R(Kristallkugelzauber)
export const LaboratoryIdentifier: () => R = () => R(Laboratory)
Expand Down Expand Up @@ -305,6 +310,7 @@ export const BotanicRegionIdentifier: () => R = () => R(BotanicRegion)
export const RingEnchantmentIdentifier: () => R = () => R(RingEnchantment)
export const RitualIdentifier: () => R = () => R(Ritual)
export const RopeOrChainIdentifier: () => R = () => R(RopeOrChain)
export const SchweinetrommelzauberIdentifier: () => R = () => R(Schweinetrommelzauber)
export const ScriptIdentifier: () => R = () => R(Script)
export const SermonIdentifier: () => R = () => R(Sermon)
export const SexPracticeIdentifier: () => R = () => R(SexPractice)
Expand Down
6 changes: 6 additions & 0 deletions src/types/_IdentifierGroup.ts
Original file line number Diff line number Diff line change
Expand Up @@ -62,12 +62,14 @@ import {
GeodeRitualIdentifier,
GoblinRitualIdentifier,
HaubenzauberIdentifier,
HauerkettenZauberIdentifier,
IlluminationLightSourceIdentifier,
IlluminationRefillOrSupplyIdentifier,
InstrumentEnchantmentIdentifier,
JesterTrickIdentifier,
JewelryIdentifier,
KarmaSpecialAbilityIdentifier,
KeulenzauberIdentifier,
KrallenkettenzauberIdentifier,
KristallkugelzauberIdentifier,
LaboratoryIdentifier,
Expand Down Expand Up @@ -100,6 +102,7 @@ import {
RingEnchantmentIdentifier,
RitualIdentifier,
RopeOrChainIdentifier,
SchweinetrommelzauberIdentifier,
ScriptIdentifier,
SermonIdentifier,
SexPracticeIdentifier,
Expand Down Expand Up @@ -191,8 +194,10 @@ export const SpecialAbilityIdentifier = DB.Enum(import.meta.url, {
FoolsHatEnchantment: DB.EnumCase({ type: FoolsHatEnchantmentIdentifier() }),
GeneralSpecialAbility: DB.EnumCase({ type: GeneralSpecialAbilityIdentifier() }),
Haubenzauber: DB.EnumCase({ type: HaubenzauberIdentifier() }),
Hauerkettenzauber: DB.EnumCase({ type: HauerkettenZauberIdentifier() }),
InstrumentEnchantment: DB.EnumCase({ type: InstrumentEnchantmentIdentifier() }),
KarmaSpecialAbility: DB.EnumCase({ type: KarmaSpecialAbilityIdentifier() }),
Keulenzauber: DB.EnumCase({ type: KeulenzauberIdentifier() }),
Krallenkettenzauber: DB.EnumCase({ type: KrallenkettenzauberIdentifier() }),
Kristallkugelzauber: DB.EnumCase({ type: KristallkugelzauberIdentifier() }),
LiturgicalStyleSpecialAbility: DB.EnumCase({ type: LiturgicalStyleSpecialAbilityIdentifier() }),
Expand All @@ -207,6 +212,7 @@ export const SpecialAbilityIdentifier = DB.Enum(import.meta.url, {
type: ProtectiveWardingCircleSpecialAbilityIdentifier(),
}),
RingEnchantment: DB.EnumCase({ type: RingEnchantmentIdentifier() }),
Schweinetrommelzauber: DB.EnumCase({ type: SchweinetrommelzauberIdentifier() }),
Sermon: DB.EnumCase({ type: SermonIdentifier() }),
SexSpecialAbility: DB.EnumCase({ type: SexSpecialAbilityIdentifier() }),
SickleRitual: DB.EnumCase({ type: SickleRitualIdentifier() }),
Expand Down
3 changes: 3 additions & 0 deletions src/types/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -148,11 +148,14 @@ export { ChronicleEnchantment } from "./traditionArtifacts/ChronicleEnchantment.
export { DaggerRitual } from "./traditionArtifacts/DaggerRitual.js"
export { FoolsHatEnchantment } from "./traditionArtifacts/FoolsHatEnchantment.js"
export { Haubenzauber } from "./traditionArtifacts/Haubenzauber.js"
export { Hauerkettenzauber } from "./traditionArtifacts/Hauerkettenzauber.js"
export { InstrumentEnchantment } from "./traditionArtifacts/InstrumentEnchantment.js"
export { Keulenzauber } from "./traditionArtifacts/Keulenzauber.js"
export { Krallenkettenzauber } from "./traditionArtifacts/Krallenkettenzauber.js"
export { Kristallkugelzauber } from "./traditionArtifacts/Kristallkugelzauber.js"
export { OrbEnchantment } from "./traditionArtifacts/OrbEnchantment.js"
export { RingEnchantment } from "./traditionArtifacts/RingEnchantment.js"
export { Schweinetrommelzauber } from "./traditionArtifacts/Schweinetrommelzauber.js"
export { SickleRitual } from "./traditionArtifacts/SickleRitual.js"
export { SpellSwordEnchantment } from "./traditionArtifacts/SpellSwordEnchantment.js"
export { StaffEnchantment } from "./traditionArtifacts/StaffEnchantment.js"
Expand Down
36 changes: 36 additions & 0 deletions src/types/traditionArtifacts/Hauerkettenzauber.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import * as DB from "tsondb/schema/dsl"
import { levels, maximum } from "../_Activatable.js"
import { ap_value } from "../_ActivatableAdventurePointsValue.js"
import { nameBuilderRules } from "../_ActivatableNames.js"
import { cost, property, volume } from "../_ActivatableNonMundane.js"
import { GeneralPrerequisites } from "../_Prerequisite.js"
import { src } from "../source/_PublicationRef.js"
import { translations } from "./_shared.js"

export const Hauerkettenzauber = DB.Entity(import.meta.url, {
name: "Hauerkettenzauber",
namePlural: "Hauerkettenzauber",
type: () =>
DB.Object({
levels,
nameBuilderRules,
maximum,
prerequisites: DB.Optional({
type: DB.IncludeIdentifier(GeneralPrerequisites),
}),
volume,
cost,
property: property(),
ap_value,
src,
translations: translations("Hauerkettenzauber"),
}),
instanceDisplayName: {},
uniqueConstraints: [
{
entityMapKeyPath: "translations",
keyPathInEntityMap: "name_in_library",
keyPathInEntityMapFallback: "name",
},
],
})
37 changes: 37 additions & 0 deletions src/types/traditionArtifacts/Keulenzauber.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
import * as DB from "tsondb/schema/dsl"
import { levels, maximum } from "../_Activatable.js"
import { ap_value } from "../_ActivatableAdventurePointsValue.js"
import { nameBuilderRules } from "../_ActivatableNames.js"
import { cost, property, volume } from "../_ActivatableNonMundane.js"
import { GeneralPrerequisites } from "../_Prerequisite.js"
import { src } from "../source/_PublicationRef.js"
import { translations } from "./_shared.js"

//Keulenzauber für Goblinzauberinnen
export const Keulenzauber = DB.Entity(import.meta.url, {
name: "Keulenzauber",
namePlural: "Keulenzauber",
type: () =>
DB.Object({
levels,
nameBuilderRules,
maximum,
prerequisites: DB.Optional({
type: DB.IncludeIdentifier(GeneralPrerequisites),
}),
volume,
cost,
property: property(),
ap_value,
src,
translations: translations("Keulenzauber"),
}),
instanceDisplayName: {},
uniqueConstraints: [
{
entityMapKeyPath: "translations",
keyPathInEntityMap: "name_in_library",
keyPathInEntityMapFallback: "name",
},
],
})
36 changes: 36 additions & 0 deletions src/types/traditionArtifacts/Schweinetrommelzauber.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
import * as DB from "tsondb/schema/dsl"
import { levels, maximum } from "../_Activatable.js"
import { ap_value } from "../_ActivatableAdventurePointsValue.js"
import { nameBuilderRules } from "../_ActivatableNames.js"
import { cost, property, volume } from "../_ActivatableNonMundane.js"
import { GeneralPrerequisites } from "../_Prerequisite.js"
import { src } from "../source/_PublicationRef.js"
import { translations } from "./_shared.js"

export const Schweinetrommelzauber = DB.Entity(import.meta.url, {
name: "Schweinetrommelzauber",
namePlural: "Schweinetrommelzauber",
type: () =>
DB.Object({
levels,
nameBuilderRules,
maximum,
prerequisites: DB.Optional({
type: DB.IncludeIdentifier(GeneralPrerequisites),
}),
volume,
cost,
property: property(),
ap_value,
src,
translations: translations("Schweinetrommelzauber"),
}),
instanceDisplayName: {},
uniqueConstraints: [
{
entityMapKeyPath: "translations",
keyPathInEntityMap: "name_in_library",
keyPathInEntityMapFallback: "name",
},
],
})