Move the magic string into an enum

This commit is contained in:
Oliver-Akins 2025-04-05 15:31:28 -06:00
parent 95443d3709
commit bfddf855a4
4 changed files with 15 additions and 5 deletions

View file

@ -3,6 +3,7 @@ import { documentSorter, filePath } from "../../consts.mjs";
import { AmmoTracker } from "../popovers/AmmoTracker.mjs"; import { AmmoTracker } from "../popovers/AmmoTracker.mjs";
import { gameTerms } from "../../gameTerms.mjs"; import { gameTerms } from "../../gameTerms.mjs";
import { GenericAppMixin } from "../GenericApp.mjs"; import { GenericAppMixin } from "../GenericApp.mjs";
import { ItemFlags } from "../../flags/item.mjs";
import { localizer } from "../../utils/Localizer.mjs"; import { localizer } from "../../utils/Localizer.mjs";
import { Logger } from "../../utils/Logger.mjs"; import { Logger } from "../../utils/Logger.mjs";
import { PopoverEventManager } from "../../utils/PopoverEventManager.mjs"; import { PopoverEventManager } from "../../utils/PopoverEventManager.mjs";
@ -142,7 +143,7 @@ export class HeroSkillsCardV1 extends GenericAppMixin(HandlebarsApplicationMixin
for (const ammo of ctx.actor.itemTypes.ammo) { for (const ammo of ctx.actor.itemTypes.ammo) {
total += ammo.system.quantity; total += ammo.system.quantity;
if (favouriteCount < 3 && ammo.getFlag(game.system.id, `favourited`)) { if (favouriteCount < 3 && ammo.getFlag(game.system.id, ItemFlags.FAVOURITE)) {
ctx.favouriteAmmo[favouriteCount] = { ctx.favouriteAmmo[favouriteCount] = {
uuid: ammo.uuid, uuid: ammo.uuid,
name: ammo.name, name: ammo.name,

View file

@ -1,5 +1,6 @@
import { filePath } from "../../consts.mjs"; import { filePath } from "../../consts.mjs";
import { GenericPopoverMixin } from "./GenericPopoverMixin.mjs"; import { GenericPopoverMixin } from "./GenericPopoverMixin.mjs";
import { ItemFlags } from "../../flags/item.mjs";
import { localizer } from "../../utils/Localizer.mjs"; import { localizer } from "../../utils/Localizer.mjs";
import { Logger } from "../../utils/Logger.mjs"; import { Logger } from "../../utils/Logger.mjs";
@ -40,7 +41,7 @@ export class AmmoTracker extends GenericPopoverMixin(HandlebarsApplicationMixin(
let favouriteCount = 0; let favouriteCount = 0;
ctx.ammos = data.ammos.map(ammo => { ctx.ammos = data.ammos.map(ammo => {
const favourite = ammo.getFlag(game.system.id, `favourited`) ?? false; const favourite = ammo.getFlag(game.system.id, ItemFlags.FAVOURITE) ?? false;
if (favourite) { favouriteCount++ }; if (favourite) { favouriteCount++ };
return { return {
@ -73,7 +74,7 @@ export class AmmoTracker extends GenericPopoverMixin(HandlebarsApplicationMixin(
const item = await fromUuid(data.itemId); const item = await fromUuid(data.itemId);
if (!item) { return }; if (!item) { return };
item.setFlag(game.system.id, `favourited`, true); item.setFlag(game.system.id, ItemFlags.FAVOURITE, true);
}; };
static async #unfavourite(_, el) { static async #unfavourite(_, el) {
@ -87,7 +88,7 @@ export class AmmoTracker extends GenericPopoverMixin(HandlebarsApplicationMixin(
const item = await fromUuid(data.itemId); const item = await fromUuid(data.itemId);
if (!item) { return }; if (!item) { return };
item.unsetFlag(game.system.id, `favourited`); item.unsetFlag(game.system.id, ItemFlags.FAVOURITE);
}; };
// #endregion // #endregion
}; };

View file

@ -1,4 +1,5 @@
// App imports // App imports
import { AmmoTracker } from "./Apps/popovers/AmmoTracker.mjs";
import { CombinedHeroSheet } from "./Apps/ActorSheets/CombinedHeroSheet.mjs"; import { CombinedHeroSheet } from "./Apps/ActorSheets/CombinedHeroSheet.mjs";
import { DicePool } from "./Apps/DicePool.mjs"; import { DicePool } from "./Apps/DicePool.mjs";
import { HeroSkillsCardV1 } from "./Apps/ActorSheets/HeroSkillsCardV1.mjs"; import { HeroSkillsCardV1 } from "./Apps/ActorSheets/HeroSkillsCardV1.mjs";
@ -9,7 +10,9 @@ import { RichEditor } from "./Apps/RichEditor.mjs";
import { distanceBetweenFates, nextFate, previousFate } from "./utils/fates.mjs"; import { distanceBetweenFates, nextFate, previousFate } from "./utils/fates.mjs";
import { documentSorter } from "./consts.mjs"; import { documentSorter } from "./consts.mjs";
import { rankToInteger } from "./utils/rank.mjs"; import { rankToInteger } from "./utils/rank.mjs";
import { AmmoTracker } from "./Apps/popovers/AmmoTracker.mjs";
// Misc Imports
import { ItemFlags } from "./flags/item.mjs";
const { deepFreeze } = foundry.utils; const { deepFreeze } = foundry.utils;
@ -33,6 +36,7 @@ Object.defineProperty(
previousFate, previousFate,
rankToInteger, rankToInteger,
}, },
ItemFlags,
}), }),
writable: false, writable: false,
}, },

4
module/flags/item.mjs Normal file
View file

@ -0,0 +1,4 @@
export const ItemFlags = Object.freeze({
/** The boolean value to indicate if an item is considered favourited/starred or not */
FAVOURITE: `favourited`,
});