@yanhe-su/cli
Version:
CLI tool for DAO Style projects - providing project scaffolding, template generation and dependency management
15 lines (14 loc) • 461 B
JavaScript
import { merge } from 'lodash-es';
export async function mergeTemplates(templates, data, options = {}) {
let result = { ...data };
for (const template of templates) {
if (options.validate && template.validate) {
template.validate(result);
}
if (template.transform) {
const transformed = template.transform(result);
result = merge({}, result, transformed);
}
}
return result;
}