foundry-vtt-system-midgard5/source/module/sheets/M5ItemSheet.ts

41 lines
1.1 KiB
TypeScript

export class M5ItemSheet extends ItemSheet {
static get defaultOptions() {
return mergeObject(super.defaultOptions, {
width: 530,
height: 340,
classes: ["midgard5", "sheet", "item"]
})
}
get template() {
//console.log("M5ItemSheet", this.item.data.type)
const path = "systems/midgard5/templates/sheets/item"
return `${path}/${this.item.data.type}.hbs`
}
override getData(options?: Partial<ItemSheet.Options>): ItemSheet.Data<ItemSheet.Options> | Promise<ItemSheet.Data<ItemSheet.Options>> {
return Promise.resolve(super.getData()).then(value => {
const context = value as any
// Use a safe clone of the item data for further operations.
const itemData = context.item.data
// Retrieve the roll data for TinyMCE editors.
context.rollData = {}
let actor = this.object?.parent ?? null
if (actor) {
context.rollData = actor.getRollData()
}
// Add the actor's data to context.data for easier access, as well as flags.
context.data = itemData.data
context.flags = itemData.flags
return context
})
}
}