add DSA41_input Handlebars helper

This commit is contained in:
Sven Balzer 2025-05-04 10:49:56 +02:00
parent 5eeb4c7f57
commit bc8c7f6a2b

View File

@ -98,6 +98,22 @@ Hooks.once("init", async function() {
} }
}); });
Handlebars.registerHelper({
DSA41_input: (field_name, options) => {
let fields = field_name.startsWith("system.") ? options.data.root.document.system.schema.fields : options.data.root.document.schema.fields;
let field = fields[field_name.replace(/^(system\.)/, "")];
if (!field) {
console.error("Non-existent data field provided to {{DSA4_input}} handlebars helper.");
return Handlebars.SafeString("");
}
const value = foundry.utils.getProperty(options.data.root.document, field_name);
const input = field.toInput({ localize: true, value: value, ...options.hash });
return new Handlebars.SafeString(input.outerHTML);
}
});
await loadTemplates({ await loadTemplates({
"editable-input": "systems/dsa-4th-edition/src/EditableInput.hbs", "editable-input": "systems/dsa-4th-edition/src/EditableInput.hbs",