Added enrichment for Ancestries and Communities

This commit is contained in:
WBHarry 2026-02-15 14:37:45 +01:00
parent ca434d33f1
commit 4d8ad45555
32 changed files with 95 additions and 29 deletions

View file

@ -19,7 +19,6 @@ export default class DHAncestry extends BaseDataItem {
};
}
/* -------------------------------------------- */
/**@override */
@ -42,4 +41,27 @@ export default class DHAncestry extends BaseDataItem {
get secondaryFeature() {
return this.features.find(x => x.type === CONFIG.DH.ITEM.featureSubTypes.secondary)?.item;
}
/**@inheritdoc */
async getDescriptionData() {
const baseDescription = this.description;
const features = [];
for (const feature of this.features) {
if (feature.item) {
const item = feature.item.system ? feature.item : await foundry.utils.fromUuid(feature.item.uuid);
const itemDescription = await foundry.applications.ux.TextEditor.implementation.enrichHTML(
item.system.description
);
features.push({ label: item.name, description: itemDescription });
}
}
if (!features.length) return { prefix: null, value: baseDescription, suffix: null };
const suffix = await foundry.applications.handlebars.renderTemplate(
'systems/daggerheart/templates/sheets/items/description.hbs',
{ label: 'DAGGERHEART.ITEMS.Ancestry.featuresLabel', features }
);
return { prefix: null, value: baseDescription, suffix };
}
}

View file

@ -24,4 +24,26 @@ export default class DHCommunity extends BaseDataItem {
/**@override */
static DEFAULT_ICON = 'systems/daggerheart/assets/icons/documents/items/village.svg';
/**@inheritdoc */
async getDescriptionData() {
const baseDescription = this.description;
const features = [];
for (const feature of this.features) {
if (feature) {
const item = feature.system ? feature : await foundry.utils.fromUuid(feature.uuid);
const itemDescription = await foundry.applications.ux.TextEditor.implementation.enrichHTML(
item.system.description
);
features.push({ label: item.name, description: itemDescription });
}
}
if (!features.length) return { prefix: null, value: baseDescription, suffix: null };
const suffix = await foundry.applications.handlebars.renderTemplate(
'systems/daggerheart/templates/sheets/items/description.hbs',
{ label: 'DAGGERHEART.ITEMS.Community.featuresLabel', features }
);
return { prefix: null, value: baseDescription, suffix };
}
}