full template restoreablity
Some checks failed
Publish npm package / publish (push) Failing after 21s
Some checks failed
Publish npm package / publish (push) Failing after 21s
This commit is contained in:
21
README.md
21
README.md
@@ -142,7 +142,7 @@ Pass a string to choose a custom JSON path inside the output directory:
|
||||
render("./output", context, { reverseMap: "meta/reverse-map.json" })
|
||||
```
|
||||
|
||||
The map contains a flat lookup from rendered strings to template tokens plus per-file occurrences with path/range context:
|
||||
The map contains a flat lookup from rendered strings to template tokens, per-file occurrences with path/range context, inline conditional blocks, and template files skipped by path conditionals:
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -160,10 +160,27 @@ The map contains a flat lookup from rendered strings to template tokens plus per
|
||||
"outputPath": "web/index.html",
|
||||
"templatePath": "<@if(context.web)>web/index.html",
|
||||
"range": { "start": 16, "end": 21 }
|
||||
},
|
||||
{
|
||||
"kind": "conditional",
|
||||
"result": "<head><@var(context.header.title)></head>",
|
||||
"token": "<@if(context.header.show)><head><@var(context.header.title)></head><@endif>",
|
||||
"outputPath": "web/index.html",
|
||||
"templatePath": "<@if(context.web)>web/index.html",
|
||||
"range": { "start": 9, "end": 53 },
|
||||
"activeRange": { "start": 27, "end": 71 }
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"skipped": [
|
||||
{
|
||||
"kind": "file",
|
||||
"templatePath": "<@if(context.docs)>docs/readme.md",
|
||||
"encoding": "utf8",
|
||||
"content": "# Docs"
|
||||
}
|
||||
],
|
||||
"tokens": {
|
||||
"Hello": ["<@var(context.header.title)>"]
|
||||
}
|
||||
@@ -191,7 +208,7 @@ tdir reverse ./output ./templates --map meta/reverse-map.json
|
||||
bunx @gregorlohaus/tdir reverse ./output ./templates --map meta/reverse-map.json
|
||||
```
|
||||
|
||||
The command writes files at their original template paths and restores recorded `<@var(...)>` tokens in file contents and file paths. It does not infer conditional blocks that were removed during rendering; keep the original template structure when those blocks need to be preserved.
|
||||
The command writes files at their original template paths, restores recorded `<@var(...)>` tokens, wraps edited inline conditional output back in the original conditional block, and restores template files that were skipped by path conditionals.
|
||||
|
||||
## Unmatched directives
|
||||
|
||||
|
||||
Reference in New Issue
Block a user