diff --git a/spec/rolls/check-evaluation.spec.ts b/spec/rolls/check-evaluation.spec.ts index be26d9c6..37671177 100644 --- a/spec/rolls/check-evaluation.spec.ts +++ b/spec/rolls/check-evaluation.spec.ts @@ -8,11 +8,11 @@ import evaluateCheck from "../../src/module/rolls/check-evaluation"; class StubGame { constructor() { this.i18n = { - localize: (a: string) => a, + localize: (key: string) => key, }; } i18n: { - localize: (a: string) => string; + localize: (key: string) => string; }; } diff --git a/src/lang/de.json b/src/lang/de.json index dc3792f3..6740a40d 100644 --- a/src/lang/de.json +++ b/src/lang/de.json @@ -5,7 +5,7 @@ "DS4.UserInteractionAddEffect": "Neuer Effekt", "DS4.UserInteractionEditEffect": "Effekt bearbeiten", "DS4.UserInteractionDeleteEffect": "Effekt löschen", - "DS4.EntityImageAltText": "Bild von {name}", + "DS4.DocumentImageAltText": "Bild von {name}", "DS4.RollableImageRollableTitle": "Für {name} würfeln", "DS4.DiceOverlayImageAltText": "Bild eines W20", "DS4.NotOwned": "Nicht besessen", diff --git a/src/lang/en.json b/src/lang/en.json index cdaf2544..b3ebd5f7 100644 --- a/src/lang/en.json +++ b/src/lang/en.json @@ -5,7 +5,7 @@ "DS4.UserInteractionAddEffect": "Add Effect", "DS4.UserInteractionEditEffect": "Edit Effect", "DS4.UserInteractionDeleteEffect": "Delete Effect", - "DS4.EntityImageAltText": "Image of {name}", + "DS4.DocumentImageAltText": "Image of {name}", "DS4.RollableImageRollableTitle": "Roll for {name}", "DS4.DiceOverlayImageAltText": "Image of a d20", "DS4.NotOwned": "No owner", diff --git a/src/module/actor/sheets/actor-sheet.ts b/src/module/actor/sheets/actor-sheet.ts index 7f61a14c..8f4a5f0e 100644 --- a/src/module/actor/sheets/actor-sheet.ts +++ b/src/module/actor/sheets/actor-sheet.ts @@ -102,7 +102,7 @@ export class DS4ActorSheet extends ActorSheet { const li = $(ev.currentTarget).parents(".item"); const id = li.data("itemId"); - const item = this.actor.getEmbeddedDocument("Item", id) as DS4Item; // TODO: Improve in upstream + const item = this.actor.items.get(id); if (!item) { throw new Error(getGame().i18n.format("DS4.ErrorActorDoesNotHaveItem", { id, actor: this.actor.name })); } @@ -157,7 +157,10 @@ export class DS4ActorSheet extends ActorSheet notifications.error(e, { log: true })); } diff --git a/src/module/item/item-sheet.ts b/src/module/item/item-sheet.ts index 7ddee5ad..485490f2 100644 --- a/src/module/item/item-sheet.ts +++ b/src/module/item/item-sheet.ts @@ -78,7 +78,7 @@ export class DS4ItemSheet extends ItemSheet switch (a.dataset["action"]) { case "create": - return this._createActiveEffect(); + return this.createActiveEffect(); case "edit": const id = li.data("effectId"); const effect = this.item.effects.get(id); @@ -97,7 +97,7 @@ export class DS4ItemSheet extends ItemSheet /** * Create a new ActiveEffect for the item using default data. */ - protected async _createActiveEffect(): Promise { + protected async createActiveEffect(): Promise { const createData = { label: "New Effect", icon: "icons/svg/aura.svg", diff --git a/src/module/macros/roll-check.ts b/src/module/macros/roll-check.ts index 700da5c6..cd5f34e8 100644 --- a/src/module/macros/roll-check.ts +++ b/src/module/macros/roll-check.ts @@ -20,7 +20,7 @@ export async function createRollCheckMacro(check: Check, slot: string): Promise< } async function getOrCreateRollCheckMacro(check: Check): Promise { - const command = `getGame().ds4.macros.rollCheck("${check}");`; + const command = `game.ds4.macros.rollCheck("${check}");`; const existingMacro = getGame().macros?.find( (m) => m.name === DS4.i18n.checks[check] && m.data.command === command, diff --git a/src/module/macros/roll-item.ts b/src/module/macros/roll-item.ts index 4cb7db55..751a7e99 100644 --- a/src/module/macros/roll-item.ts +++ b/src/module/macros/roll-item.ts @@ -18,7 +18,7 @@ export async function createRollItemMacro(itemData: foundry.data.ItemData["_sour } async function getOrCreateRollItemMacro(itemData: foundry.data.ItemData["_source"]): Promise { - const command = `getGame().ds4.macros.rollItem("${itemData._id}");`; + const command = `game.ds4.macros.rollItem("${itemData._id}");`; const existingMacro = getGame().macros?.find((m) => m.name === itemData.name && m.data.command === command); if (existingMacro) { diff --git a/src/module/migrations/migrationHelpers.ts b/src/module/migrations/migrationHelpers.ts index 55401951..bb6ecc85 100644 --- a/src/module/migrations/migrationHelpers.ts +++ b/src/module/migrations/migrationHelpers.ts @@ -35,11 +35,11 @@ export async function migrateActors(getActorUpdateData: ActorUpdateDataGetter): try { const updateData = getActorUpdateData(actor.toObject()); if (updateData) { - logger.info(`Migrating Actor entity ${actor.name} (${actor.id})`); + logger.info(`Migrating Actor document ${actor.name} (${actor.id})`); await actor.update(updateData); } } catch (err) { - err.message = `Error during migration of Actor entity ${actor.name} (${actor.id}), continuing anyways.`; + err.message = `Error during migration of Actor document ${actor.name} (${actor.id}), continuing anyways.`; logger.error(err); } } diff --git a/src/templates/sheets/actor/components/item-list-entry.hbs b/src/templates/sheets/actor/components/item-list-entry.hbs index 989e90b7..0992d45c 100644 --- a/src/templates/sheets/actor/components/item-list-entry.hbs +++ b/src/templates/sheets/actor/components/item-list-entry.hbs @@ -25,7 +25,7 @@ SPDX-License-Identifier: MIT {{!-- image --}} {{> systems/ds4/templates/sheets/actor/components/rollable-image.hbs rollable=itemData.data.rollable - src=itemData.img alt=(localize "DS4.EntityImageAltText" name=itemData.name) title=itemData.name + src=itemData.img alt=(localize "DS4.DocumentImageAltText" name=itemData.name) title=itemData.name rollableTitle=(localize "DS4.RollableImageRollableTitle" name=itemData.name) rollableClass="rollable-item"}} {{!-- amount --}} diff --git a/tsconfig.json b/tsconfig.json index 702c8c7b..55672c07 100644 --- a/tsconfig.json +++ b/tsconfig.json @@ -3,6 +3,7 @@ "target": "ES2020", "lib": ["DOM", "ES2020"], "types": ["@league-of-foundry-developers/foundry-vtt-types"], + "esModuleInterop": true, "moduleResolution": "node", "forceConsistentCasingInFileNames": true, "strict": true,