UNPKG

@eljs/create

Version:
56 lines (54 loc) 1.94 kB
var __defProp = Object.defineProperty; var __getOwnPropDesc = Object.getOwnPropertyDescriptor; var __getOwnPropNames = Object.getOwnPropertyNames; var __hasOwnProp = Object.prototype.hasOwnProperty; var __export = (target, all) => { for (var name in all) __defProp(target, name, { get: all[name], enumerable: true }); }; var __copyProps = (to, from, except, desc) => { if (from && typeof from === "object" || typeof from === "function") { for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); } return to; }; var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); // src/internal/plugins/render.ts var render_exports = {}; __export(render_exports, { default: () => render_default }); module.exports = __toCommonJS(render_exports); var import_utils = require("@eljs/utils"); var import_node_path = require("node:path"); var render_default = (api) => { api.registerMethod( "render", async (path, data = {}, options) => { const baseDir = (0, import_utils.extractCallDir)(3); const srcFile = (0, import_node_path.resolve)(baseDir, path); if (await (0, import_utils.isDirectory)(srcFile)) { await api.copyDirectory(srcFile, api.paths.target, data, { renderOptions: options }); } else { const destFile = (0, import_node_path.join)( api.paths.target, (0, import_node_path.basename)(path).replace(/\.tpl$/, "") ); if (srcFile.endsWith(".tpl")) { await api.copyTpl(srcFile, destFile, data, { renderOptions: options }); } else { await api.copyFile(srcFile, destFile, { data, renderOptions: options }); } } } ); };