UNPKG

mxdocgen

Version:

A small tool that mimics the documentation generation capabilities offered in Mendix Studio Pro, but with greater flexibility. It uses the Mendix Model SDK to extract information from a Mendix model, which is then fed into a set of templates to generate

36 lines 1.58 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; result["default"] = mod; return result; }; exports.__esModule = true; var path_1 = __importDefault(require("path")); var fs = __importStar(require("fs")); var pkg_dir_1 = __importDefault(require("pkg-dir")); var mustache_1 = __importDefault(require("mustache")); exports.defaultTemplateConfig = { directory: path_1["default"].join(pkg_dir_1["default"].sync(__dirname), "templates"), extension: ".html", mainTemplate: "Main" }; exports.render = function (config, templateData) { var templates = loadTemplates(config.directory, config.extension, config.mainTemplate); return mustache_1["default"].render(templates.main, templateData, templates.partials); }; var loadTemplates = function (directory, extension, main) { return ({ main: loadTemplate(directory, extension, main), partials: function (partialName) { return loadTemplate(directory, extension, partialName); } }); }; var loadTemplate = function (directory, extension, name) { var cleanExtension = extension.match(/^[.\\/]*(.*)$/)[1]; return fs.readFileSync(path_1["default"].join(directory, name + "." + cleanExtension), { encoding: "utf8" }); }; //# sourceMappingURL=templates.js.map