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

37 lines 1.54 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; exports.__esModule = true; var ignore_1 = __importDefault(require("ignore")); var mendixmodelsdk_1 = require("mendixmodelsdk"); var Folder = mendixmodelsdk_1.projects.Folder; exports.defaultFilterConfig = { modulesRegex: ".*", documentIgnorePatterns: ["**"] }; exports.createRegexModuleFilter = function (filter) { return filter ? function (module) { return module.name.match(filter) !== null; } : function () { return true; }; }; exports.defaultModuleFilter = exports.createRegexModuleFilter(new RegExp(exports.defaultFilterConfig.modulesRegex)); exports.createGlobDocumentFilter = function (ignorePatterns) { var ig = ignore_1["default"]().add(ignorePatterns); return function (document) { var path = buildDocumentPath(document); return !ig.ignores(path); }; }; exports.defaultDocumentFilter = exports.createGlobDocumentFilter(exports.defaultFilterConfig.documentIgnorePatterns); var buildDocumentPath = function (document) { var documentPath = [document.name]; var container = document.containerAsFolderBase; while (isFolder(container)) { documentPath.unshift(container.name); container = container.containerAsFolderBase; } return documentPath.join("/"); }; var isFolder = function (folderbase) { return folderbase.structureTypeName === Folder.structureTypeName; }; //# sourceMappingURL=filters.js.map