import { Misc } from "./misc.js"; export class DialogSplitItem extends Dialog { static async create(item, callback) { const itemData = Misc.data(item); const splitData = { item: itemData, choix: { quantite: 1, max: itemData.data.quantite - 1 } }; const html = await renderTemplate(`systems/foundryvtt-reve-de-dragon/templates/dialog-item-split.html`, splitData); return new DialogSplitItem(item, splitData, html, callback) } constructor(item, splitData, html, callback) { let options = { classes: ["dialogsplit"], width: 300, height: 160, 'z-index': 99999 }; let conf = { title: "Séparer en deux", content: html, default: "separer", buttons: { "separer": { label: "Séparer", callback: it => { this.onSplit(); } } } }; super(conf, options); this.callback = callback; this.item = item; this.splitData = splitData; } async onSplit(){ await $(".choix-quantite").change(); this.callback(this.item, this.splitData.choix.quantite); } /* -------------------------------------------- */ activateListeners(html) { super.activateListeners(html); html.find(".choix-quantite").change(event => { this.splitData.choix.quantite = Number(event.currentTarget.value); }); } }