import { ArtBrowser } from "../apps/ArtBrowser.mjs"; import { __ID__ } from "../consts.mjs"; Hooks.on(`getHeaderControlsDocumentSheetV2`, (sheet) => { const original = sheet.options.actions.editImage; sheet.options.actions.editImage = async (event, target) => { if (!game.settings.get(__ID__, `openForEditImage`)) { return original.call(sheet, event, target); }; if (target.nodeName !== `IMG`) { throw new Error(`The editImage action is available only for IMG elements.`); }; const src = await ArtBrowser.select(1); if (!src) { return }; target.src = src; if (sheet.options.form.submitOnChange) { const submit = new Event(`submit`, { cancelable: true }); sheet.form.dispatchEvent(submit); }; }; });