53 lines
1.1 KiB
JavaScript
53 lines
1.1 KiB
JavaScript
import { filePath } from "../../consts.mjs";
|
|
import { GenericAppMixin } from "../mixins/GenericApp.mjs";
|
|
|
|
const { HandlebarsApplicationMixin } = foundry.applications.api;
|
|
const { ItemSheetV2 } = foundry.applications.sheets;
|
|
|
|
export class TraitSheet extends GenericAppMixin(HandlebarsApplicationMixin(ItemSheetV2)) {
|
|
// #region Options
|
|
static DEFAULT_OPTIONS = {
|
|
classes: [
|
|
`ripcrypt--item`,
|
|
`TraitSheet`,
|
|
],
|
|
position: {
|
|
width: `auto`,
|
|
height: `auto`,
|
|
},
|
|
window: {
|
|
resizable: true,
|
|
},
|
|
form: {
|
|
submitOnChange: true,
|
|
closeOnSubmit: false,
|
|
},
|
|
};
|
|
|
|
static PARTS = {
|
|
content: {
|
|
template: filePath(`templates/Apps/TraitSheet/content.hbs`),
|
|
root: true,
|
|
},
|
|
};
|
|
// #endregion Options
|
|
|
|
// #region Data Prep
|
|
async _prepareContext() {
|
|
const TextEditor = foundry.applications.ux.TextEditor.implementation;
|
|
const ctx = {
|
|
meta: {
|
|
idp: this.id,
|
|
},
|
|
item: this.document,
|
|
enriched: {
|
|
system: {
|
|
description: await TextEditor.enrichHTML(this.document.system.description),
|
|
},
|
|
},
|
|
};
|
|
|
|
return ctx;
|
|
};
|
|
// #endregion Data Prep
|
|
};
|