UNPKG

edgerender-yatl

Version:

Yet Another Template Language

33 lines 1.63 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.str2stream = exports.render_string = exports.render_template = exports.load_template = void 0; const parse_1 = require("./parse"); Object.defineProperty(exports, "load_template", { enumerable: true, get: function () { return parse_1.load_template; } }); const render_1 = require("./render"); Object.defineProperty(exports, "render_template", { enumerable: true, get: function () { return render_1.render_template; } }); const utils_1 = require("./utils"); Object.defineProperty(exports, "str2stream", { enumerable: true, get: function () { return utils_1.str2stream; } }); async function render_string(template_string, context, functions, prepare_parser_wasm, file_loader) { const root_path_name = 'template_string'; const _file_loader = async (path) => { if (path == root_path_name) { return utils_1.str2stream(template_string); } else if (file_loader) { const f = await file_loader(path); if (typeof f == 'string') { return utils_1.str2stream(f); } else { return f; } } else { throw Error(`Unable to load template "${path}", use the 'file_loader' template argument to provide a custom file loader`); } }; const template_elements = await parse_1.load_template(root_path_name, _file_loader, prepare_parser_wasm); return await render_1.render_template(template_elements, context, functions); } exports.render_string = render_string; //# sourceMappingURL=index.js.map