Implement typed template library and rendering

This commit is contained in:
2026-08-02 12:38:38 +02:00
parent 142c3a26f1
commit b65b905b6e
28 changed files with 4385 additions and 104 deletions
+20
View File
@@ -0,0 +1,20 @@
# Templates User Guide
Open **Templates** to create or select a reusable definition.
1. Choose the template type and the contexts in which it may be used, such as
`campaign.postal`.
2. Declare every required input path and its type. Use the same paths as tokens
in the body, for example `{{name}}` or `{{postal.address}}`.
3. Configure page size and, for label sheets, rows, columns, and spacing.
4. Save to create a new immutable revision. Publish the revision before using
it for final output.
5. In **Preview**, supply a representative JSON item. Compatibility validation
explains missing fields, wrong types, unsupported usages, and output-format
mismatches before output is produced.
6. Preview a draft or render final output. Store it in Files when that module is
available and you have upload permission; otherwise use the bounded download.
Render evidence shows the exact revision and abbreviated template, input, and
output hashes. A consumer such as Campaign can submit many frozen recipients;
the UI sample intentionally validates one representative item.