import { M5Item } from "../items/M5Item" export class M5ItemSheet extends ItemSheet { static get defaultOptions() { return mergeObject(super.defaultOptions, { width: 420, height: 240, 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.Data | Promise> { const item = this.item as M5Item return Promise.resolve(super.getData()).then(value => { item.prepareDerivedData() 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 }) } }