"use strict"; const Package = require('dgeni').Package, jsdocPackage = require('dgeni-packages/jsdoc'), nunjucksPackage = require('dgeni-packages/nunjucks'), typescriptPackage = require('dgeni-packages/typescript'), linksPackage = require('dgeni-packages/links'), path = require('path'), config = require('../config.json'); module.exports = currentVersion => { return new Package('ionic-native-docs', [jsdocPackage, nunjucksPackage, typescriptPackage, linksPackage]) .processor(require('./processors/remove-private-members')) .processor(require('./processors/hide-private-api')) .processor(require('./processors/parse-optional')) .processor(require('./processors/mark-properties')) .processor(require('./processors/npm-id')) .processor(require('./processors/jekyll')) .config(require('./configs/log')) .config(require('./configs/template-filters')) .config(require('./configs/template-tags')) .config(require('./configs/tag-defs')) .config(require('./configs/links')) .config(function(renderDocsProcessor, computePathsProcessor) { currentVersion = { href: '/' + config.v2DocsDir.replace('content/', ''), folder: '', name: currentVersion }; renderDocsProcessor.extraData.version = { list: [currentVersion], current: currentVersion, latest: currentVersion }; computePathsProcessor.pathTemplates = [{ docTypes: ['class'], getOutputPath: doc => 'content/' + config.v2DocsDir + '/' + doc.name + '/index.md' }]; }) //configure file reading .config(function(readFilesProcessor, readTypeScriptModules) { // Don't run unwanted processors since we are not using the normal file reading processor readFilesProcessor.$enabled = false; readFilesProcessor.basePath = path.resolve(__dirname, '../../..'); readTypeScriptModules.basePath = path.resolve(__dirname, '../../..'); readTypeScriptModules.sourceFiles = [ './src/@ionic-native/plugins/**/*.ts' ]; }) // Configure file writing .config(function(writeFilesProcessor) { writeFilesProcessor.outputFolder = '../ionic-site/'; }) // Configure rendering .config(function(templateFinder) { templateFinder.templateFolders.unshift(path.resolve(__dirname, 'templates')); // Specify how to match docs to templates. templateFinder.templatePatterns = [ '${ doc.template }', '${ doc.docType }.template.html', 'common.template.html' ]; }); };