blob: 648bb5604100ace0c520c289081a1d9d90b4e1b1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
import handlebars from "handlebars";
import fs from "fs";
export interface Template {
inputFile: string;
outputFile: string;
context: Record<string, string>;
data?: string;
}
export default async (_template: Template): Promise<Template> => {
const buffer = await fs.promises.readFile(_template.inputFile, "utf-8");
const translate = handlebars.compile(buffer);
const template = {
..._template,
data: translate(_template.context),
};
await fs.promises.writeFile(template.outputFile, template.data);
return template;
};
|